sgdd.net
当前位置:首页 >> 单片机数码管显示程序中CoDE是什么意思 >>

单片机数码管显示程序中CoDE是什么意思

俺来帮你解答:程序中uchar code table[] 是定义一个数组table[] 用来存放显示编码的数据.为了不丢失 把该数组中的数据定义在程序存储器里.code 是指数据存储的空间指定为程序存储器. 满意的话 请选择:满意回答 呵呵

您好,这样的:code:程序存储区.data:固定指前面0x00-0x7f的128个RAM,可以用acc直接读写的,速度最快,生成的代码也最小.idata:固定指前面0x00-0xff的256个RAM,其中前128和data的128完全相同,只是因为访问的方式不同.

code是单片机里面的一个数据存储区 意思是把数组里面的元素存放到这个数据区域里(code) 而table【】就是一个数组table是一个数组名 这个数组里面有两个元素 分别是1和2 前面的int就不用说了吧 他的意思就是数组里面存储的是int类型的数据!所以整体的意思就是定义了一个int类型的数组 这个数组存放在数据存储区code区 里面有俩元素 分别时1和2!!!!!!!!!!

你说的是在定义一组数组时,可以作为数据表格时,就用code 语句,意思是这些数据放在程序存储器中.如下:unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};这就是典型的用法,这是定义一组数据,即为数码管的段码表,因都是常数,就可以放在程序存储区.如果没有code 就放在数据存储区了,但是,因单片机的内部RAM容量比较小,像这样的常数就不必放在RAM数据区,以节省RAM数据区的使用.

位选和段选的程序,是根据锁存器的工作原理来编的一般的锁存器如74LS373或573是在锁存引脚高电平时,8个输入端和8个输出端直通,在下降沿时数据被锁存,所以程序中每送一次数据就有 wela=1; wela=0;或 dula=1; dula=0;由于是动态扫描,实际上是一位一位轮换显示,所以每次数码管只亮一个如 P0=0xbf; 化成二进制1011 1111

你要数码管依次显示的话,我推荐有求余的方式即“%”.

CODE表示这段代码是存在程序存储器中的,当然程序运行时就不能更改其内容了如果去掉CODE它就被当作普通变量保存在内存中了,程序中可以修改,但占用了单片机宝贵的内存 表格数据量大是一定不要这么作

位定义可以节省引脚啊.否则一个数码管用一个P0口,那如果好几个数码管怎么办?呵呵 段码是为了方便取数啊,这样就不用用一个就编一个,多麻烦啊

定义无符号单字节字符型代码表,表的位置在代码段

这个就要看希望显示的是什么呢,比如现在要做一个数字时钟,那么,那些时间变量就是要显示的,可以建立一个数组变量,作为显示缓冲,在主程序里,不停的把当前的时间变量放入显示缓冲区, 数码管动态刷新的时候,就直接把显示缓冲区你的数值进行显示就可以了

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