- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
msp430单片机入门知识专用课件
1.4 文件管理 将大程序划分为若干小的C文件,最常用的划分方法是按功能模块划分(对象)。 /* DataProcess.c */ int Sum(int a,int b,int c) { int y; y=a+b+c; return(y); } float Average(int a,int b,int c) { float y; y=a+b+c; return(y/3); } /* DataProcess.h */ Extern int Sum (int a,int b,int c); Extern float Average(int a,int b.intc); /* main.c */ #include “DataProcess.h” ... void main() { ... Tem=Average(tem1,tem2,tem3); Weight=Sum(W1,W2,W3); ... } 青岛大学-TI 大学生创新中心 傅强 * 全局变量的处理 隶属关系模糊的全局变量单独建global.c 隶属于某模块的,写在模块c文件中 /* global.c */ int BattVoltage; unsigned int SystemStatus; int Temperature; /* global.h */ Extern int BattVoltage; Extern unsigned int SystemStatus; Extern int Temperature; /* DataProcess.c */ Unsigned char OverflowFlag; int Sum(int a,int b,int c) { int y; y=a+b+c; If(y65535) OverflowFlag=1; return(y); } /* DataProcess.h */ Extern int Sum (int a,int b,int c); Extern unsigned char OverflowFlag; 青岛大学-TI 大学生创新中心 傅强 * 1.5 代码优化 编译器可自动对代码进行优化 速度快,但占rom多 速度慢,占rom少 可选优化等级,等级越高,占rom越小 调试阶段最好关闭优化 要是不优化还有变量改变,则加volatile 青岛大学-TI 大学生创新中心 傅强 * 1.6 风格 对于写程序代码,有3个层次 首先,计算机要能读 其次,要自己能读 最后,要别人能读 青岛大学-TI 大学生创新中心 傅强 * 1.6.1 变量命名规则 变量名要有含义,不要随便用abcxyz 变量名最好是名词词性,1-4个单词 每个单词首字母大写 Int InputVoltage; Int Temperature; 必须出现空格时,用下划线代替 Int Degree_C; Int Degree_F; 单词较长,适当简写 int NumOfInputChr; Int Deg_F; 多个模块都有的变量,按“模块名_变量名” Char ADC_Status; Int UART1_RxcharCnt; 约定俗成的变量不要改动 I、j作为循环变量,p、q作为指针,s、t表示字符串 青岛大学-TI 大学生创新中心 傅强 * 1.6.2 函数命名规则 模块名_不及物动词 模块名_及物动词+名词 首字母大写 专用名词全部大写 长单词缩写 返回值是布尔型的,对返回1还是0的表意清晰 Unsigned int ADC16_Sample(); Char LCD_Init(); Char RTC_Get(); Void PWM_SetPeriod(); Void Flash_WriteChar(); Void UART_GetChar(); Char Key_GetKey(); Char TouchPad_GetKey(); Transmit Tx Recetive Rx Count Cnt To 2 Char UART_CheckTxBuff();//检查缓冲区 Char UART_IsTxBuffFull();//缓冲区是否已满 青岛大学-TI 大学生创新中心 傅强 * 1.6.3 表达式 好的表达式可以朗读出来 消除歧义,运算优先级拿不准就加括号,表达式复杂就拆开。 If ( UART_IsTxBuffFull() ) UART_ClearTxBuff(); Else UART_PutChar(0x55); i=5; j=++i; 结果i=6,j=6 等效于i=5; i=i+1; j=i; i=5; j=i++
您可能关注的文档
- MBA_MPA_MEM论证有效性分析万能写作模板供参习.doc
- Matlab资料全集专用课件.ppt
- MBA《现代广告策划学》全书附毕业试题供参习.doc
- MBA与EMBA的区别专用课件.ppt
- MBA全套讲义教材目录供参习.doc
- MBA写作论证有效性分析专用课件.ppt
- MAX模型课程表1供参习.doc
- MBA各院校学费一览表供参习.doc
- mba市场营销全套讲义和考试李秉萱讲师1供参习.doc
- MBA全国硕士研究生入学统一考试英语(二)考试大纲解析专用课件.ppt
- 医学生基础医学 内科急危重症护理基础护理课件.pptx
- 2025-2026学年贵州省黔南州平塘县七年级(上)期中数学试卷(含简单答案).pdf
- 医学生基础医学 伦理规范护理课件.pptx
- 2025-2026学年广东省湛江市廉江六中八年级(上)月考数学试卷(10月份)(含答案).pdf
- 2025-2026学年贵州省贵阳市修文县七年级(上)期中数学试卷(含答案).pdf
- 医学生基础医学 伦理决策应用护理课件.pptx
- 医学生基础医学 临终护理基础护理课件.pptx
- 2025-2026学年河南省开封市金明中学九年级(上)期中数学试卷(含部分答案).pdf
- 2025-2026学年河南省许昌二中七年级(上)期中数学试卷(含答案).pdf
- 2025-2026学年河南省安阳八中八年级(上)期中数学试卷(含答案).pdf
最近下载
- 第46届世界技能大赛河南省选拔赛--汽车技术项目-附件2汽车底盘-评分表.pdf VIP
- 无人飞机农业植保应用技术 单元7 玉米的病虫害及防治.ppt VIP
- 无人飞机农业植保应用技术 课件20、大疆T20植保无人飞机作业-3.pptx
- QQ安装应用.doc VIP
- 第46届世界技能大赛河南省选拔赛--汽车技术项目-附件3车身电气-评分表.pdf VIP
- 第46届世界技能大赛河南省选拔赛--汽车技术项目-附件4发动机机械-评分表.pdf VIP
- 第46届世界技能大赛河南省选拔赛--汽车技术项目-附件1发动机管理-评分表.pdf VIP
- 2025年江苏新海高级中学少年班自主招生语文试卷真题.pdf
- 高考英语完形填空专项训练高考真题120题含答案解析.docx
- 金融风险管理(中央财经大学)中国大学MOOC(慕课)章节测验试题(答案).pdf
原创力文档


文档评论(0)