驱动数码管建议用8H4K64TL,80mA大电流IO,自动扫描,不需要外接其他芯片
以下是1637数码管显示程序
- void I2C_Start(void)
- {
- SCL=1;
- SDA=1;
- _nop_();
- SDA=0;
- _nop_();
- }
-
- void I2C_Stop(void)
- {
- SCL=1;
- SDA=0;
- _nop_();
- SDA=1;
- _nop_();
- }
-
- void I2C_Send(unsigned char temp)
- {
- unsigned char i;
- SCL=0;
- _nop_();
- for(i=0;i<8;i++)
- {
- if((temp>>i)&0x01)
- SDA=1;
- else
- SDA=0;
- _nop_();
- SCL=1;
- _nop_();
- SCL=0;
- _nop_();
- }
- SCL=1;
- _nop_();
- SCL=0;
- _nop_();
- }
-
- void Display(unsigned char temp)
- {
- unsigned char i;
- I2C_Start();
- I2C_Send(0x40);
- I2C_Stop();
- I2C_Start();
- I2C_Send(0xc0);
- for(i=0;i<4;i++)
- {
- I2C_Send(~Buff[i]);
- }
- I2C_Stop();
- I2C_Start();
- if(temp<8)
- I2C_Send(0x88|temp);
- else
- I2C_Send(0x8f);
- I2C_Stop();
- }
复制代码
|