mwbr.net
当前位置:首页 >> unsignED ChAr CoDE >>

unsignED ChAr CoDE

code的作用是告诉单片机,我定义的数据要放在ROM(程序存储区)里面,其实是相当与汇编里面的寻址MOVX(好像是),因为C语言中没办法详细描述存入的是ROM还是RAM(寄存器),所以在软件中添加了这一个语句起到代替汇编指令的作用,对应的还有data...

这就是无符号字符型表,存储在程序存储器(rom)中,不占用随机存储器(ram),这样用是因为令一些不用修改的常值不占用宝贵的ram。若将第一个值赋给i,就写i=table[0];,和普通的表的用法是一样的。

定义一个无符号字符型一维数组,table是数组名table[],中的[],省掉了一个参数,如果有参数,参数就表示些数组包含的个数,{}里的值就是数组包含的值。上面的代码可以写成unsigned char code table[16]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x...

把0这个常量做个强制类型转换。转为一个指针。不然,只一个0编译器只会认为他是个常量,你要用这个0地址,你只有显示的告诉编译器,这里这个0我是当地址用,而不是个常量。

tab是变量名,code是keil的修饰符便是变量存储在程序存储器中,不可被修改,因为传统51只有128字节的数据存储区

指定变量led存储在code区。也就是rom或者是flash,这要看单片机程序存储器的构成,像7的就是EPROM如87C51;0的是掩模,如80C51;9的就是flash,常见的89S51. code去掉也可以,不过是把变量存放在别的区域。这要根据编译器的设定存储模式来定。 ...

code 在C51和pic的c18中都是把常量存到程序存储区。

应该是要的, 但是可以把code去掉. 不知道你51用的是什么编译器, 居然有code的修饰类型. 我猜应该定义常量的意思. 大部分的编译器常量定义都是用const. 所以移植到STM32中, 要改成const来修饰. 其实简单实验一下就知道了, 在51的环境中定义一个un...

0xfe=1111 1110b 0xfd=1111 1101b 0xfb=1111 1011b 0xf7=1111 0111b.......看出规律来了吗 这是一个流水灯的程序吧!? P1=fang[i]; 就是说分别给单片机的P1的各个口赋值低电平,然后点亮LED灯!

C0,C代表十进制的12,二进制的1100 ,0代表十进制的0,二进制的0000 。 1100 0000 放在数码管可以显示0.

网站首页 | 网站地图
All rights reserved Powered by www.mwbr.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com