资源简介

这是我个人参加完蓝桥杯过后,从新编写的单片机类代码,代码从第四届到第八届,代码文件夹里面有对应的题目,有需要的请自行下载。

资源截图

代码片段和文件信息

/************************************************
程序说明:在读温度模式下无法解决PWM问题(底层使用第八届)
程序平台:CT1070
晶振:11.0592M
程序人员:小星
时间:2017/8/22
** MM模式 **

注意:在做P34的PWM输出时,NAL不要和P34接在一起。 

*************************************************/
#include “15.h“
#include “absacc.h“
#include “onewire.h“
#include “key.h“
#define u16 unsigned int
#define u8 unsigned char

u8 code wei[] = {0x010x020x040x080x100x200x400x80}; //位选
u8 code duan[] = {0xc00xf90xa40xb00x990x920x820xf80x800x900xbf0xc60xff}; //段选
u8 shu[] = {1212121212121212}; //显示缓冲区

u8 wendu; //读温度
u8 flag; //读温度周期
u8 mode = 1; //模式
u8 PWM = 20; //
u8 s5 = 0; //按键s5
u8 time = 0; //定时时间
u8 t_0t_1; //中断标志位
bit s7 = 0; //按键s7

/*********** 函数声明 ***********/
void display(void); //声明数码管显示函数
void Timer0Init(void); //1毫秒@11.0592MHz自动重装初值
void Timer1Init(void); //5毫秒@11.0592MHz


void display(void)
{
u8 i;
for(i = 0;i < 8;i ++)
{
XBYTE[0XC000] = wei[i]; //位选,从左到右依次选中
XBYTE[0XE000] = duan[shu[i]]; //段选

XBYTE[0XE000] = 0XFF; //消影
}
}

/********  产生PWM  ********/
void Timer0Init(void) //10微秒@11.0592MHz自动重装初值
{
// AUXR &= 0x7F; //定时器时钟12T模式
TMOD &= 0xF0; //设置定时器模式
TL0 = 0xF7; //设置定时初值
TH0 = 0xFF; //设置定时初值
TF0 = 0; //清除TF0标志
TR0 = 1; //定时器0开始计时
EA = 1;
ET0 = 1;
}
/*********   倒计时用   **********/
void Timer1Init(void) //5毫秒@11.0592MHz(不可以同时使用两个自动重装初值)
{
// AUXR &= 0xBF; //定时器时钟12T模式
TMOD &= 0x0F; //设置定时器模式
TMOD |= 0x10; //设置定时器模式
TL1 = 0x00; //设置定时初值
TH1 = 0xEE; //设置定时初值
TF1 = 0; //清除TF1标志
TR1 = 1; //定时器1开始计时
EA = 1;
ET1 = 1;
}

void main(void)
{
XBYTE[0X8000] = 0XFF; //LED灭
XBYTE[0XA000] = 0X00; //继电器,蜂鸣器灭
Timer0Init();
Timer1Init();
while(1)
{
display(); //数码管显示函数
key();
switch(key_1) //模式,时间,读温度,清零时间选择
{
case 4:mode ++; //模式选择
   if(mode > 3) mode = 1;
    break;
case 5:s5 ++; //时间选择
       if(s5 > 3) s5 = 1;
   if(s5 == 1)
{
time = 0;
}
else if(s5 == 2)
{
time = 60;
}
else
{
time = 120;
}
    break;
case 6:time = 0; //清零时间;
s5 = 0;
XBYTE[0X8000] = 0XFF;
break;
case 7:s7 =!s7; //读时间
break;
}
if(s7) //模式4,显示温度值
{
flag ++;
if(flag > 200)
{
wendu = read_temperature();
flag = 0;
}
shu[0] = 10;
shu[1] = 4;
shu[2] = 10;
shu[3] = 12;
shu[4] = 12;
shu[5] = wendu/10;
shu[6] = wendu%10;
shu[7] = 11;

}
else //模式1到3
{
if(mode == 1) //睡眠风模式1
{
shu[0] = 10;
shu[1] = 1;
shu[2] = 10;
shu[3] = 12;
}
else if(mode == 2) //自然风,模式2
{
shu[0] = 10;
shu[1] = 2;
shu[2] = 10;
}
else //常风,模式3
{
shu[0] = 10;
shu[1] = 3;
shu[2] = 10;
}
shu[4] = time/1000; //显示时间
shu[5] = time/100%10; //显示时间
shu[6] = time/10%10; //显示时间
shu[7] = time%10; //

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1845  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\Listings\key.lst

     文件       8682  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\Listings\main.lst

     文件      20903  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\Listings\main.m51

     文件       4807  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\Listings\onewire.lst

     文件      71628  2017-08-24 18:32  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\main.uvgui.Administrator

    .......     90810  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\main.uvgui.Huang-Zhi-Rong

     文件      71651  2018-03-21 19:19  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\main.uvgui.huangzhirong

     文件      71651  2018-03-21 19:19  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\main.uvgui_huangzhirong.bak

    .......      5795  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\main.uvopt

     文件      14694  2018-07-29 18:49  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\main.uvproj

    .......      6069  2018-03-21 19:19  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\main_uvopt.bak

     文件      14281  2017-08-22 22:25  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\main_uvproj.bak

     文件       4601  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\objects\key.obj

     文件      23565  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\objects\main

     文件       1128  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\objects\main.build_log.htm

     文件       4953  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\objects\main.hex

     文件        137  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\objects\main.lnp

     文件      12392  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\objects\main.obj

     文件       7952  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\project\objects\onewire.obj

     文件      12805  2017-08-22 21:51  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\user\15\15.h

     文件       1956  2017-08-23 17:22  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\user\18b20\onewire.c

     文件        122  2017-08-21 21:22  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\user\18b20\onewire.h

     文件        583  2017-08-23 20:01  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\user\key\key.c

     文件         90  2017-08-20 15:32  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\user\key\key.h

     文件       4158  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\user\main.c

     文件     154723  2017-03-23 11:22  蓝桥杯单片机第四届到第八届省赛程序+题目\第七届\蓝桥杯单片机第七届省赛试题.pdf

     文件       2004  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第五届\project\Listings\keys.lst

     文件       8470  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第五届\project\Listings\main.lst

     文件      20635  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第五届\project\Listings\main.m51

     文件       4812  2018-07-29 18:55  蓝桥杯单片机第四届到第八届省赛程序+题目\第五届\project\Listings\onewire.lst

............此处省略188个文件信息

评论

共有 条评论