范文无忧网范文学习范文大全

51单片机课程设计要怎么写

10月25日 编辑 fanwen51.com

[51单片机C语言编程]代码如下: typedef union { unsigned int myvalue; struct{ unsigned myvalueL:8; unsigned myvalueH:8; }child; }_mytype; _mytype mytype; void main() { mytype.myvalue...+阅读

51单片机课程设计要怎么写

第一次见有人这样问!!- - 自己学单片机都不知道该做什么啊,看样子复杂的你是没指望了,看看书,写个计算器、万年历、变压器啦什么的还可以 追问: 我不会啊 回答: 真干脆!你们老师也没说题目,就是让你自己想题目然后设计啊?要是那样,也不怪乎你会问这种问题 课程设计 的一般要:

1、 设计任务书 :说明设计的内容,达到什么程度

2、硬件电路图:设计硬件 电路板 (若不要做实物的话,可用protues仿真,但无论如何硬件电路一定要有)

3、 软件设计 :根据硬件电路开发,去实现要设计的目的。

4、 流程图 :绘制软件流程图(其实,应该是根据先流程图 再设计 程序的,不过一般具体流程图都是要根据软件细化,所以就放在了编程后便..) 5. 设计说明 书:总结是设计的过程 //----------------------------- 一般 单片机 设计的流程就是这样了,可以根据你们要具体做哪些....

C51单片机数字电子时钟课程设计

#include#include#include#define unit unsigned int#define uchar unsigned char//#define HZ 12sbit key0=P0^0; // 分钟调整sbit key1=P0^1; // 小时调整sbit P2_0=P2^7; //秒 指示灯sbit MN_RXD=P3^6;sbit MN_TXD=P3^7;uchar data CLOCK[4]={0,0,0,12};//存放时钟时间(百分秒,秒,分,和时位)//数码管显示表0-f 灭uchar code TABLE[]={0xBE,0x06,0xEA,0x6E,0x56,0x7C,0xFC,0x0E,0xFE,0x7E,0x00};//**********************************//模拟串口发送一个字节数据 函数 //**********************************void SendData(unsigned char senddata) { unsigned char i; for(i=0;i<8;i++) { if((senddata&0x01)==0) MN_RXD=0; else MN_RXD=1; _nop_(); MN_TXD=0; _nop_(); MN_TXD=1; senddata=senddata>>1; }}//**********************************//显示程序函数//**********************************void display(void){ // unsigned int n; uchar temp; temp=CLOCK[1]; temp=temp%10; SendData(TABLE[temp]); temp=CLOCK[1]; temp=temp/10; SendData(TABLE[temp]); temp=CLOCK[2]; temp=temp%10; SendData(TABLE[temp]); temp=CLOCK[2]; temp=temp/10; SendData(TABLE[temp]); temp=CLOCK[3]; temp=temp%10; SendData(TABLE[temp]); temp=CLOCK[3]; temp=temp/10; SendData(TABLE[temp]);/* for(n=0;n<5000;n++); for(n=0;n<6;n++) { SendData(TABLE[10]); }*/ }//**********************************//按键控制函数//**********************************void keycan(){ unsigned int n; EA=0; if(key0==0) // 分钟调整 { for(n=0;n<10000;n++); //延时去抖动 while(key0==0); CLOCK[2]=CLOCK[2]+1; if(CLOCK[2]==60) //到一时 { CLOCK[2]=0; } display(); } if(key1==0) // 小时调整 { for(n=0;n<10000;n++); //延时去抖动 while(key1==0); CLOCK[3]=CLOCK[3]+1; if(CLOCK[3]==24) { CLOCK[3]=0; } display(); } EA=1;} //**********************************//T0中断服务函数//**********************************void time0() interrupt 1 //using 1{ TH0=0xD8; TL0=0xF0; //重置初值// TH0=0xB1; TL0=0xE0; //时钟处理 CLOCK[0]=CLOCK[0]+1;}//**********************************//主函数//**********************************void main(){ EA=1; ET0=1; TMOD=0x01; //T0方式1定时 TH0=0xD8; TL0=0xF0; //D8F0 定时10ms// TH0=0xB1; TL0=0xE0; //定时 20ms TR0=1; for(;;) { if(CLOCK[0]==100) //到一秒 10ms*100 { CLOCK[0]=0; P2_0=~P2_0; CLOCK[1]=CLOCK[1]+1; if(CLOCK[1]==60) //到一分 { CLOCK[1]=0; CLOCK[2]=CLOCK[2]+1; if(CLOCK[2]==60) //到一时 { CLOCK[2]=0; CLOCK[3]=CLOCK[3]+1; if(CLOCK[3]==24) { CLOCK[3]=0; } } } display(); } keycan(); }}

80C51单片机智能频率计课程设计

首先明确一下,频率计设计不需要传感器,频率计接转速传感器可以测量转速。

设计思路:

1、信号调理是关键

如果输入信号不是太复杂,采用滞回比较器整形成方波,即可直接接单片机测量。

如果输入信号含有大量的 噪声,应该先用低通滤波器滤波,滤去较大的毛刺,再接滞回比较器整形。

如果输入信号是包含载波的调制波,可用滤波器先提取调制信号,再接滞回比较器整形,也可用锁相环直接提取调制信号接单片机。

2、单片机编程

主要是使用单片机的定时器,最好使用单片机定时器的捕获功能,可以提高测量的准确度。

对于高频信号,可以采用在固定时间内对脉冲计数的方式。

对于低频信号,可以采用测量脉冲周期再倒数的方式。

最好是上述两种方式结合,即在设定时间内,计算整数个脉冲的时间,结果除以脉冲数得到周期,再倒数得到频率。

3、LED显示

频率测量可以达到较高的精度,可以采用4~8位数码管显示,自己搜索一下数码管扫描电路。

延伸阅读:

单片机控制的跑马灯课程设计汇编版和c#include <reg52.h> #define int8 unsigned char #define int16 unsigned int #define Ledout P0 int8 Led[]={0xff,0x7e,0x3c,0x18,0x00}; int8 i; /*延时程序微妙*/ void...

课程设计的小结怎么写类似这样的 小 结 为期3周的夹具课程设计已经接近尾声,回顾整个过程,我组4名同学在老师的指导下,取得了可喜的成绩,课程设计作为《机械制造工艺学》、《机床夹具设计》课程的重...

基于单片机的时钟计数器设计89C51 LED电子钟 参考链接: *APPLICATION NOTE E6000 ICEXPLORER *************** * Title: FOR colk_time * * Version: 00 * * Last Updated: * * MCU: AT89C91 * * FOR: W...

用51单片机都能做什么工程用51单片机都能做什么工程,51系列单片机有哪些用途:因不同的功能和要求有不同的用法,能做的东西很多。型号的话根据不用的需求来选择 软件方面:设计时要考虑到程序的大概大小,比...

C51单片机实验程序C51单片机实验程序,有没有学长讲讲单片机怎么学:用中断模块和定时模块,当然还要加主程序和头文件,输出口定义等,看你的硬件连接方式,下面是延时子程序和一个中断程序,可类别编程。...

单片机实验设计单片机实验设计,初学51单片机有什么好的视频教程大神推荐一下:;------------------------------------- ;下列程序,经过编译、仿真,符合要求: ;---------------------------------...

C51单片机数字电子时钟课程设计C51单片机数字电子时钟课程设计,单片机课程设计电子时钟程序:#include<reg52.h>#include<absacc.h>#include<intrins.h>#define unit unsigned int#define uchar unsigned cha...

80C51单片机智能频率计课程设计80C51单片机智能频率计课程设计,单片机课程设计:首先明确一下,频率计设计不需要传感器,频率计接转速传感器可以测量转速。 设计思路: 1、信号调理是关键 如果输入信号不是太复杂,...

基于单片机的交通灯系统设计论文:基于PLC的交通灯控制系统的设计:交通灯相关毕业设计 ·基于PLC的城市交通控制系统设计 (字数:26796,页数:58)·交通信号灯控制电路的设计 (字数:9998,页数:29 )·基于单片机的交通...

推荐阅读
图文推荐
栏目列表