基于51单片机的恒压供水系统

loading 分享 2026-7-18 下载文档

期的指令,所以在同样晶振频率下,较8051速度要快。另PIC的8位单片机前几年是世界上出货量最大的单片机,飞思卡尔的单片机紧随其后。

ARM实际上就是32位的单片机,它的内部资源(寄存器和外设功能)较8051和PIC、AVR都要多得多,跟计算机的CPU芯片很接近了。常用于手机、路由器等等。

DSP其实也是一种特殊的单片机,它从8位到32位的都有。它是专门用来计算数字信号的。在某些公式运算上,它比现行家用计算机的最快的CPU还要快。比如说一般32位的DSP能在一个指令周期内运算完一个32位数乘32位数积再加一个32位数。应用于某些对实时处理要求较高的场合。

附录一:程序

#include #define uchar unsigned char #define uint unsigned int sbit st=P3^2; sbit oe=P3^1; sbit eoc=P3^0; uchar

codetab[]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09};//数码管显示段码

uchar codetd[]={0x00,0x10,0x20,0x30,0x40,0x50,0x60,0x70};//通道先择数组

uint ad_0809,ad_data1,ad_data2,ad_data3,ad_data0; uchar m,number;

uchar x[8];//八通道数据待存数组 void delaynms(uint x);//nms延时程序 void display();//显示程序 void ad0809();//芯片启动程序 void key();//键扫描程序 main() { number=1;

P1=0x00; while(1) {

ad0809();//调AD0809 启动子程序 key();//调按键子程序

ad_0809=x[number];//把相关通道数据给ad_0809 display();//调显示 }}

//nms 延时程序 void delaynms(uint x) { uchar i; while(x-->0) {

for(i=0;i<125;i++) {;}}}

void display() { uchar a;

ad_data1=(ad_0809*49/25)/100;//读得的数据乘以2 再乘以98%除以100 得百位

ad_data2=((ad_0809*49/25)0)/10;//读得的数据乘以2 再乘以

98%再分出十位

ad_data3=(((ad_0809*49/25)0));//读得的数据乘以2 再乘以98%再分出个位 for(a=0;a<10;a++) {

P0=tab[ad_data3];//送小数点后第二位显示 P2=0x07;//选通第一个数码管 delaynms(3);

P0=tab[ad_data2];//送小数点后第一位显示 P2=0x0b;//选通第二个数码管 delaynms(3);

P0=tab[ad_data1];//送整数显示 P0_7=0;//点亮第三个数码管小数点 P2=0x0d;// 选通第三个数码管 delaynms(3);

P0=tab[number];//送通道号显示 P2=0x0e; delaynms(3); }}

void ad0809() {

uchar i,m=1;


基于51单片机的恒压供水系统.doc 将本文的Word文档下载到电脑
搜索更多关于: 基于51单片机的恒压供水系统 的文档
相关推荐
相关阅读