|
看教程说是静态数码管共阳极
但是看此代码
- #include <reg52.h>
- #include <intrins.h>
- typedef unsigned char u8; //重定义全局字符型变量
- typedef unsigned int u16; //重定义全局整型变量
- u8 code table[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
- 0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
- /*利用数组引用数码表(注次数码表为阴极数码表,因为是共阳极数码管,本应使用刚阳极数码管,
- 为了方便直接将共阴极数码表取反来使用)。code是将数组从ram调到ROM节省空间*/
- /*延时函数*/
- void dealy(u16 i)
- {
- while(i--);
- }
- void main()
- { int i=0;
- for(i=0;i<9;i++){
- P0=table[i];
- dealy(50000);
- }
复制代码
使用共阴极数码表正常显示,但是要是跟教程里面说的阴极数码表取反得阳极数码表,显示的是一堆乱码。
求大佬帮忙解决啊 |
|