久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: TM1640與PIC12F629單片機的結合 [打印本頁]

作者: huchunhb    時間: 2018-8-31 17:45
標題: TM1640與PIC12F629單片機的結合
TM1640是驅(qū)動數(shù)碼管的專用集成電路,可以直接驅(qū)動16位共陰數(shù)碼管,手冊請下載附件。
/*******************************
*本程序直接驅(qū)動16位共陰數(shù)碼管,各數(shù)碼管分別驅(qū)動0、1、2、……E、F。
*/
#include <pic.h>  //PIC12F629

__CONFIG(0x3F84);

#define clk GPIO0  //時鐘信號
#define dio GPIO1   //數(shù)據(jù)/地址數(shù)據(jù)
#define uchar unsigned char
#define uint unsigned int
                                                                                                                                                                 //共陰極數(shù)碼管
const uchar SEGData[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7C,0x39,0x5E,0x79,0x71,0x00};//1-9-F-不輸出
//uchar weidata[4];//位變量
//uchar timecnt,keyzh,dpFlag = 0; //控制第二個數(shù)碼管的dp的顯示
//char time, sec;
void init(void);
void Delay_us(uint); //nus 延時
void tm1640_start(void);//1640開始
void tm1640_stop(void);  //1640停止
void tm1640_wrbyte(uchar); //寫一個字節(jié)
void tm1640_display(void); //寫顯示寄存器 并開顯示

///=============================================
void main(void)
{

init(); //初始化

while(1)
{
  tm1640_display(); //寫寄存器并開顯示
}
}

///=======================================
void Delay_us(uint i) //nus 延時
{
  uchar x;              
for(;i>0;i--)
for(x=0;x<3;x++) asm("NOP");
}
///======================================
void tm1640_start(void) //1640開始
{
  clk=1;
   dio=1;
   Delay_us(2);
  dio = 0;
}

void tm1640_stop(void)  //1640停止
{
clk = 0;
  Delay_us(2);
   dio = 0;
    Delay_us(2);
   clk = 1;
  Delay_us(2);
dio = 1;
}
//=========================
void tm1640_wrbyte(uchar oneByte) //寫一個字節(jié)
{
  uchar i;
  for(i=0;i<8;i++)
  {
   clk = 0;
   Delay_us(2);
   if(oneByte&0x01) dio = 1; //低位在前
    else dio = 0;
    Delay_us(3);
    oneByte=oneByte>>1;
    clk=1;
    Delay_us(3);
   }
}
//======================
void tm1640_display(void) //寫顯示寄存器 并開顯示
{
uchar i;
tm1640_start();
  tm1640_wrbyte(0x40);// 40H 地址自動加 1 模式,44H 固定地址模式,本程序采用自加 1 模式
   tm1640_stop();
  tm1640_start();
tm1640_wrbyte(0xc0);//設置首地址
for(i=0;i<16;i++)//地址自加,不必每次都寫地址。
  {
   tm1640_wrbyte(SEGData[i]); //送數(shù)據(jù)
  }
  tm1640_stop();
   tm1640_start();
   tm1640_wrbyte(0x8a);//開顯示 ,亮度:14/16
  tm1640_stop();
}
///================================================
void init(void)  //初始化程序
{
OPTION=0x80; //禁止弱上拉
WPU= 0x00; //關閉弱上拉
  INTCON = 0X00; //開總中斷和T1中斷
   TRISIO=0x08; //IO 口做輸出
  //IOCB = 0X00; //電平變化觸發(fā)中斷;全關
    CMCON=0x07; // 設置全部為普通數(shù)字IO口 關閉所有比較器
   GPIO=0x08; //端口0 輸出低電平
}

LED數(shù)碼管驅(qū)動ICTM1640_V1.1.pdf

280.3 KB, 下載次數(shù): 27, 下載積分: 黑幣 -5






歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 国产精品久久久久久久久久久久 | 亚洲一区电影 | www.99热 | 天天看逼 | 久久亚洲春色中文字幕久久久 | 天天色天天射天天干 | 日日碰狠狠躁久久躁婷婷 | 精品一区av | 欧美电影免费网站 | 日韩精品一区二区三区中文字幕 | 中文字幕免费视频 | 综合国产 | 国产成人精品一区二区三区在线 | 久久久久国产精品一区 | 日本精品一区二区三区在线观看 | 91在线色视频 | 久久久久国产 | 9999国产精品欧美久久久久久 | 日韩在线欧美 | 日日干夜夜干 | 久久久久久免费看 | 欧美日高清视频 | 亚洲一区二区三区 | 黄瓜av | 日本精品一区二区三区在线观看 | av在线一区二区三区 | 日韩在线精品 | 一区二区三区四区国产精品 | 国产aa | 操操日 | 欧美性受xxxx | 天天操综合网 | 欧美日韩在线免费观看 | 亚洲精品日韩综合观看成人91 | 久久网一区二区三区 | 91色视频在线观看 | 中文字幕亚洲一区 | 观看av| 欧美日韩在线高清 | 免费在线视频a | 成人精品鲁一区一区二区 |