历史上的今天
今天是:2024年12月24日(星期二)
2020年12月24日 | 单片机+ADC0832热电阻PT100测温程序
2020-12-24 来源:51hei



单片机源程序如下:
#include #include #define uchar unsigned char #define uint unsigned int sbit cs=P1^2; sbit clk=P1^0; sbit di=P1^1; uchar num,num1,i,a,b,c,e,f,g; int wendu; sbit we = P2^7; //位定义数码管位选锁存器接口 sbit du = P2^6; //位定义数码管段选锁存器接口 sbit pay_plus=P1^4; sbit pay_minus=P1^3; sbit confirm=P1^5; sbit LED=P1^6; int TimerCount=0,time_count=0; int L_set_wendu=0; int H_set_wendu=20; bit confirm_scan=1; bit pay_plus_scan=1; bit pay_minus_scan=1; //数码管段选表 uchar code leddata[]={ 0x3F, //"0" 0x06, //"1" 0x5B, //"2" 0x4F, //"3" 0x66, //"4" 0x6D, //"5" 0x7D, //"6" 0x07, //"7" 0x7F, //"8" 0x6F, //"9" 0x40, //"-" 0x00, //熄灭 0x00 //自定义 }; void delay(unsigned long x) { uchar y; for(;x>0;x--) for(y=110;y>0;y--); } uchar ADC0832() { cs=1; clk=0; cs=0; di=1; clk=1; clk=0; di=1; clk=1; clk=0; di=0; clk=1; clk=0; di=1; for(i=0;i<8;i++) { clk=1; clk=0; num=num<<1; num|=(uchar)di; } cs=1; return num; } int SG=0; void Key() { if(confirm!=confirm_scan) { if(confirm==0) //下降沿 { SG++; // step++; if(SG>=3) SG=0; } confirm_scan=confirm; } } void Timer0_Init(void) { TMOD |= 0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA = 1; ET0 = 1; TR0 = 1; } void main() { pay_plus=1; pay_minus=1; confirm=1; Timer0_Init(); while(1) {Key(); ADC0832(); if(num<=38) wendu=num-69; if(num>38&&num<=70) wendu=num-70; if(num>70) wendu=num-71; if(SG==0) { if(wendu>=0) { a=wendu/100; b=wendu%100/10; c=wendu%10; if(a>0) { P0 = 0xfd;//1111 1101 只选通第二位数码管 we = 1; //打开位选 we = 0; //关闭位选 P0 = leddata[a]; //显示2 du = 1;//打开段选 du = 0; //关闭段选 delay(2);//延时 } if(a!=0||b>0) { P0 = 0xfb;// 1111 1011只选通第三位数码管 we = 1; //打开位选 we = 0; //关闭位选 P0 = leddata[b]; //显示3 du = 1;//打开段选 du = 0; //关闭段选 delay(2);//延时 } P0 = 0xf7;//1111 0111 只选通第四位数码管 we = 1; //打开位选 we = 0; //关闭位选 P0 = leddata[c]; //显示4 du = 1;//打开段选 du = 0; //关闭段选 delay(2);//延时 } } if(SG==1) //设定上限报警 { P0 = 0xfe;//1111 0111 只选通第二位数码管 we = 1; //打开位选 we = 0; //关闭位选
史海拾趣
|
各位大侠,您们好。小弟刚刚接触WinCE,在公司进行NANDFLASH驱动开发,遇到相关问题,痛苦了几天没有解决,希望各位大侠能够帮助小弟解决该问题,问题是这样的: 我用Wince4.2,直接把同事已经编译通过的NANDFLASH驱动源代码(nand.cpp)添加到该项 ...… 查看全部问答> |
|
web service在嵌入式设备中被调用,使用的wince模拟器实现,但是在模拟器中出现了网络连接问题,请高手解决以下 web service在嵌入式设备中被调用,使用的wince模拟器实现,但是在模拟器中出现了网络连接问题,请高手解决以下 通过google的一个key在嵌入式设备中调用了一个serviece的aqi,在用模拟器模拟时出现了下面的问题,有人能解决一下不~ Google.exe W ...… 查看全部问答> |
|
宝钢一台行车,调速装置选用的是ABB公司的ASTAT9,现使用过程中存在以下问题:行车大车是双电机运行,在大车运行时,起动的时候都很平稳,很正常,但是在停车的时候就抖动非常厉害,经查外部回路也没异常,测速发电机的电压也正常,是不是ASTAT9内 ...… 查看全部问答> |
|
本帖最后由 paulhyde 于 2014-9-15 03:40 编辑 如何在FPGA上设计DA数模转换电路?(就是在FPGA的芯片上实现DA转换功能)求大侠们给小弟说一下! … 查看全部问答> |




