99久久全国免费观看_国产一区二区三区四区五区VM_久久www人成免费看片中文_国产高清在线a视频大全_深夜福利www_日韩一级成人av

  • 回復
  • 收藏
  • 點贊
  • 分享
  • 發新帖

貼個PIC16F716的數字電表程序,試了一下,還不錯.

//////////////////////////////////////////////////
//  Author     :   Toby
//  Date       :   2008/12/02
//  Function   :   用作電源的電流電壓溫度等控制
//  MCU        :   PIC16F877A
//  C Compiler :   PICC 8.05
//  IDE        :   MPLAB IDE v8.10                
/////////////////////////////////////////////////

#include
__CONFIG (0x3f32);           //燒寫配置位

const char TABLE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0X82,0XF8,0X80,0X90};  //定義常數0-9的數據表格
void adinitial_voltage();
void display_voltage();
void  delay(unsigned char x);
unsigned long int AD_data=0;

void  initial();


main()                          //主程序
{
       unsigned int a;                        
       initial();                 //先初始化各I/O              
       while(1)
        {    
            for(a=850;a>=1;--a)
            display_voltage();
        
        }
      
}



void  initial()          
{  
    TRISA=0B00000001;
    TRISB=0X0;
    PORTB=0XFF;
}



//輸入電壓A/D轉化初始化子程序
void adinitial_voltage()// RA0為AD輸入
{        unsigned char a;
         AD_data=0;
         for(a=200;a>=1;--a)
           {
             ADCON1=0B00000100;          //ADRESH 寄存器的高6 位讀為0;6位與7位須置1
             ADCON0=0B01000001;          //A/D轉換器模塊工作;但AD轉換不進行;FOSC/8
             asm("nop");asm("nop");
             GODONE=1;
             while(GODONE);
             AD_data+=ADRES;
          }
}






void display_voltage()                           //電壓顯示函數  
   {
    
    int ge,shi,bai,temp;   //定義6個臨時變量
    
     adinitial_voltage();
     temp=AD_data/10203.268234356317257871662016740*100;  
    

     bai=temp/100;             //求顯示的千位        
     shi=temp%100/10;          //求顯示的百位
     ge=temp%10;            //求顯示的十位
  
     PORTB=TABLE[bai]&0x7f;    //顯示一個小數點
     PORTA=0B1111100;            //RA1輸出低電平,點亮千位顯示    
     delay(1);
     PORTB=TABLE[shi];           //查表得百位顯示的代碼
     PORTA=0B1111010;                 //RA2輸出低電平,點亮百位顯示
     delay(1);                    //延時一定時間,保證顯示亮度
     PORTB=TABLE[ge];           //查表得十位顯示的代碼
     PORTA=0B1110110;                 //RA3輸出低電平,點亮十位顯示
     delay(1);                    //延時一定時間,保證亮度
     PORTB=0xff;

   }


void  delay(unsigned char x)  //延時程序
    {
     unsigned char i=x;     //定義整形變量
     for(i=200;--i;);          //延時
    }
全部回復(7)
正序查看
倒序查看
lsxczn
LV.1
2
2009-04-09 11:54
下來學習了,非常感謝~~
0
回復
fzhlpp
LV.7
3
2009-04-09 23:09
剛學單片機的,看不大懂,不過你的C寫的很漂亮,向你學習了,有空指點一下我,謝謝了.
http://bbs.dianyuan.com/topic/399922
0
回復
bessam
LV.4
4
2009-04-15 09:30
哈哈,不錯,借見了
0
回復
2011-08-01 14:16
@bessam
哈哈,不錯,借見了

這么沒有硬件連接圖阿!

要是有就好了!

0
回復
bpyanyu
LV.8
6
2011-08-01 17:49

做個記號

0
回復
2011-08-01 20:03

樓主的:10203.268234356317257871662016740

是從那里來的?

0
回復
zfp1
LV.1
8
2015-08-12 09:52
樓主用的芯片是PIC16F716嗎?
0
回復
主站蜘蛛池模板: 一本大道久久加勒比香蕉 | 巨大欧美黑人XXXXBBBB | 欧美熟妇性XXXX欧美熟人多毛 | 欧洲国产精品无码专区影院 | 精品无码国模私拍视频 | 成人国产一区二区三区精品麻豆 | 国产精品成人VA在线播放 | 7777精品伊人久久久大香线蕉 | 被两个两个黑人吃奶4P | 久久国产禁久久 | 超碰人人爱| 人人做人人看人人添 | 亚洲AV成人一区二区三区AV | 欧美成人看片一区二三区图文 | 欧美诱惑一区 | 狠狠操操| 成人免费视频xbxb入口 | 国产在线精品拍揄自揄免费 | 欧美精产国品一二三产品区别在哪 | 免费性色 | 蜜臀av免费一区二区三区久久乐 | 久久久久久久久毛片精品火炮 | 99精品国产在热久久无毒不卡 | 新久久久| 一区av在线 | 亚洲性视频网站 | 91麻精品国产91久久久久 | 一本之道中文日本高清 | 国产精品无码翘臀在线看 | 狠狠色丁香六月色 | 色视频在线观看免费视频 | 日韩黄色a | 影音先锋中文字幕无码 | 国产成人涩涩涩视频在线观看 | 亚洲日韩亚洲另类激情文学 | 无码H肉3D动漫在线观看 | 浴室洗澡偷拍一区二区 | 国产xxxx | 一色一伦一区二区三区 | 99c视频色欲在线 | 午夜狠狠干 |