- 1、本文档共113页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
AVR-libc 参考手册(带书签)
avr-libc 参考手册
1.4.4
Generated by Doxygen 1.4.6
Thu Apr 20 23:34:14 2006
翻译:杨子江
2007-2-1
6 avr-libc 模块文件
6 avr-libc 模块文件
6 avr-libc 模块文件
6.1 assert.h: 诊断
6.1.1 详细描述
#include assert.h
这个头文件定义了调试的帮助。
由于使用本库的许多应用程序没有标准错误输出流可供使用,默认情况下不允许产生一
个可打印的错误信息。应用程序在包含头文件assert.h之前定义宏
__ASSERT_USE_STDERR
错误信息才会被生成。默认情况下,只有调用abort()才会挂起应用程序。
定义
#define assert(expression)
参数:
expression 对表达式进行测试。
宏assert()测试给定的参数expression,如果结果为假,调用assert() 的进程将被终止。一
条诊断信息写入stderr 并且调用函数abort(),可以有效终止程序。
如果expression 为真,宏assert()不进行任何操作。
如果编译时定义了宏NDEBUG (例如使用编译器选项-DNDEBUG ),则宏assert()将会
被忽略。
6.2 avr/boot.h:Bootloader 功能支持
6.2.1 详细描述
#include avr/io.h
#include avr/boot.h
这个模块定义的宏提供C 语言的接口支持某些AVR 单片机的Bootloader 功能。这些宏
设计为可在所有不同大小的Flash 存储器下工作。
注意:
–9 –
6 avr-libc 模块文件
不是所有的AVR 单片机都提供bootloader 支持。详情请查看AVR 单片机的数据手册。
Todo
来自Marek 的Email:小型器件(除了ATmega64/128) ,__SPM_REG 是在I/O 空间中,使用”in”
和”out”指令可以生成较短的代码- 由于bootloader 空间有限,这可能是一个重要的优化方法。
API 用法示例
下面的代码显示了boot API 的典型用法。
#include inttypes.h
#include avr/interrupt.h
#include avr/pgmspace.h
void boot_program_page (uint32_t page, uint8_t *buf)
{
uint16_t i;
uint8_t sreg;
//关中断
sreg = SREG;
cli();
eeprom_busy_wait ();
boot_page_erase (page);
boot_spm_busy_wait (); //等待Flash 擦除结束
for (i=0; iSPM_PAGESIZE; i+=2)
{
//将数据转换成小端模式
uint16_tw=*buf++;w+=(*buf++)8;
boot_page_fill (page + i, w);
}
boot_page_write (page); //
您可能关注的文档
- 制药:行业处于增速回暖.pdf
- 制造业如何大幅提升竞争力.ppt
- 制造周期.pdf
- 别墅物业:深圳红树湾东部花园水岸别墅前期策划报告(德思勤&星彦地产)-107页.pdf
- 制造大国向创造强国的历史跨越.ppt
- 券商2009年中报数据简析.pdf
- 前瞻性货币政策反应函数在我国货币政策中的检验.pdf
- 前置液设计.ppt
- 剑桥春天推广策划方案.ppt
- 副井井筒装备安装工程施工作业规程.doc
- DB23_T 3866-2024冰上龙舟赛事组织服务规范.docx
- DB32 2163-2012 棉纱单位可比综合电耗限额及计算方法.docx
- DB32∕T 2429-2013 棉花田间生长发育观察记载规范.docx
- DB23_T 3820-2024 工业互联网综合平台数据质量管理规范.docx
- DB23_T 3474-2023非煤智慧矿山信息系统技术规范.docx
- DB3201_T 1106-2022 工程地质层划分技术规范.docx
- DB33T 2515-2022公共机构“零碳”管理与评价规范.docx
- DB3301_T 0415-2023 装修垃圾收运处置管理规范.docx
- DB3311/T 106―2019“丽水山居”民宿服务要求与评价规范.docx
- DB3201T 1127-2022 慈善捐赠受赠管理规范.docx
最近下载
- Schneider Electric施耐德HVX 40.5kV(K)中压真空断路器中文操作手册安装和用户指南(中文).pdf
- 初高中数学衔接练习题.pdf VIP
- 贵州省通用安装工程计价定额(第四册).docx VIP
- 广州市预制装配式钢筋混凝土排水检查井.docx VIP
- 厨师劳务用工合同模板.docx VIP
- 西班牙语动词名词用法.ppt VIP
- GZ_01-31-2016贵州省建筑与装饰工程计价定额(中册).docx VIP
- GZ01-31-2016 贵州省建筑与装饰工程计价定额(下册).docx VIP
- GZ 01-31-2016 贵州省建筑与装饰工程计价定额(上册).docx VIP
- 《人工智能讲座》课件.ppt VIP
文档评论(0)