||
以下是之前工作的公司firmware中个人认为较好的一套规范,权且与各位分享:
所有分位,若旗标及缓存器用途相同,则用同一种名称,若之前尚未定议使用过之名称,则需提出申请!并依照此规范所订定之准则命名,名称皆需与该缓存器之用法有关!不得使用无关之名称!
(一)CPU定义 IO脚规范
□□□_□□□□□□□□
第一个字符代表PORT 的简写,即是I/O PIN与旗标的分别
第二个字符为PORTA PORTB PORTC 之A B C,用来区分哪一组IO
第三个字符为INPUT OUTPUT A/D …………用来区分那一种功能
第四个字符为_用来区隔名称
后面八个空格为名称 最小以三个字符,最多到八个字符
(二)CPU 定义旗标
□_□□□□□□□□
第一个字符为F,代表旗标
第二个字符为_,用来区隔名称
后面八个空格为名称 最小以三个字符,最多到八个字符
(三) CPU缓存器定义
□□□□□□□□_□□□□
以十三个字符为限,最后四个字符为型别加数字,倒数第五个字符为底线;若同类型缓存器(例接收缓存器)则最后一个字符为数字0依次排列;前面八个字符为名称定义.
(1)公用缓存器定义
中断子程序为I_BANK0_WRK0 BANK0之0代表BNK0,BANK1 则为BANK1 WRK1则为名称数字,数字可依次累加,主程序为M_BANK0_WRK0,B0之0 代表BANK0, BANK1则为BAN1,WRK1则为名称数字,数字可依次累加
(2)计数器以CNT结尾 ,A/D采样的值以DAT结尾,备份上一次的值以BAK结尾,实时使用以REG 结尾,指针式缓存器以PTR做结尾,只有短时间的存在有效则为TMP结尾,定时器以TIM结尾,在一个周期到达之后才需放到指定的地方以BUF结尾,FLAG以FLG结尾
(3)若A/D值的电压回授为直流则以V为称,若为链波则以AV , 例LINE_AV_DAT
LINE_V_DAT
(四)常数定义