- 博客(26)
- 资源 (6)
- 收藏
- 关注
原创 蓝桥杯第11届省赛(7.5号第一批)
题目代码这次的题目就是有一个细节,下降沿刷新事件比较的有意思,稍微不注意可能就会写错,其他也是中规中矩的考,和之前出现的都差不多timer.c#include <timer.h>/*** @Function Timer0Init* @author STC_isp* @date 2020/7/7* @Description: 定时器0的初始化* @param void* @return
2020-08-02 16:18:28 454 1
原创 2020国信长天模拟_测温计
题目代码这套题也就在DS1302上考察了停止功能,其他的也算比较简单timer.c#include <timer.h>void Timer0Init(void) //1毫秒@12.000MHz{ AUXR &= 0x7F; //定时器时钟12T模式 TMOD &= 0xF0; //设置定时器模式 TL0 = 0x18; //设置定时初值 TH0 = 0xFC; //设置定时初值 TF0 = 0; //清除TF0标志 TR0 =
2020-08-02 15:45:02 277
原创 蓝桥杯单片机第11届模拟_智能门锁
题目代码这套模拟题最难的应该就是密码的输入了,用了笨方法,用swtich一个一个的写出来的timer.c#include <timer.h>void Timer0Init(void) //1毫秒@11.0592MHz{ AUXR |= 0x80; //定时器时钟1T模式 TMOD &= 0xF0; //设置定时器模式 TL0 = 0xCD; //设置定时初值 TH0 = 0xD4; //设置定时初值 TF0 = 0; //清除TF0标志
2020-08-02 15:11:54 1611 1
原创 蓝桥杯单片机第10届_电压方波发生器
题目代码这一届考的内容和以前的基本一样,没整那么变换,就是多了个NE555,国赛经常考的模块,就劝退了很多人,其实也就只是把定时器设为计数模式,很简单timer.c#include <timer.h>void TimerInit(void) //1毫秒@12.000MHz{ AUXR &= 0xBF; //定时器时钟12T模式 TMOD &= 0x0F; TMOD |= 0X05; //设置定时器模式 TL1 = 0x18; //设置
2020-08-02 14:30:31 524
原创 蓝桥杯单片机第9届省赛_彩灯控制器
题目代码其实这一届的题目不难,最难的应该是那个RB2调亮度吧,只要想到用pwm基本就能写出来timer.c#include <timer.h>void Timer0Init(void) //1毫秒@11.0592MHz{ AUXR |= 0x80; //定时器时钟1T模式 TMOD &= 0xF0; //设置定时器模式 TL0 = 0xCD; //设置定时初值 TH0 = 0xD4; //设置定时初值 TF0 = 0; //清除TF0标志
2020-08-02 14:04:49 3294
原创 蓝桥杯单片机第8届省赛_电子钟
题目程序timer.c#include <timer.h>void Timer0Init(void) //1毫秒@11.0592MHz{ AUXR |= 0x80; //定时器时钟1T模式 TMOD &= 0xF0; //设置定时器模式 TL0 = 0xCD; //设置定时初值 TH0 = 0xD4; //设置定时初值 TF0 = 0; //清除TF0标志 TR0 = 1; //定时器0开始计时 EA=ET0=1;}timer.h#
2020-08-02 12:09:12 1958 2
原创 蓝桥杯单片机第7届省赛_模拟风扇控制系统
题目代码timer.c#include <timer.h>void Timer0Init(void) //1毫秒@11.0592MHz{ AUXR |= 0x80; //定时器时钟1T模式 TMOD &= 0xF0; //设置定时器模式 TL0 = 0xCD; //设置定时初值 TH0 = 0xD4; //设置定时初值 TF0 = 0; //清除TF0标志 TR0 = 1; //定时器0开始计时 EA=ET0=1;}void Time
2020-08-01 17:22:57 1139
原创 蓝桥杯单片机第6届省赛_温度记录器
题目代码timer.c#include <timer.h>void Timer0Init(void) //1毫秒@12.000MHz{ AUXR |= 0x80; //定时器时钟1T模式 TMOD &= 0xF0; //设置定时器模式 TL0 = 0x20; //设置定时初值 TH0 = 0xD1; //设置定时初值 TF0 = 0; //清除TF0标志 TR0 = 1; //定时器0开始计时 EA=ET0=1;}timer.h#ifn
2020-08-01 16:54:04 1211
原创 蓝桥杯单片机第5届省赛_简易温度采集与控制装置
题目代码timer.c#include <timer.h>void Timer0Init(void) //1毫秒@12.000MHz{ AUXR |= 0x80; //定时器时钟1T模式 TMOD &= 0xF0; //设置定时器模式 TL0 = 0x20; //设置定时初值 TH0 = 0xD1; //设置定时初值 TF0 = 0; //清除TF0标志 TR0 = 1; //定时器0开始计时 EA=ET0=1;}timer.h#if
2020-08-01 16:13:30 626
原创 蓝桥杯单片机第4届省赛_模拟智能灌溉系统
题目代码timer.c#include <timer.h>void Timer0Init(void) //1毫秒@12.000MHz{ AUXR |= 0x80; //定时器时钟1T模式 TMOD &= 0xF0; //设置定时器模式 TL0 = 0x20; //设置定时初值 TH0 = 0xD1; //设置定时初值 TF0 = 0; //清除TF0标志 TR0 = 1; //定时器0开始计时 EA=ET0=1;}timer.h#i
2020-08-01 15:39:57 632
原创 “国信长天杯”2011_温度监控器
题目代码由于当时手上没有电机就用了LED代替电机timer.c#include <timer.h>void Timer0Init(void) //1毫秒@12.000MHz{ AUXR |= 0x80; //定时器时钟1T模式 TMOD &= 0xF0; //设置定时器模式 TL0 = 0x20; //设置定时初值 TH0 = 0xD1; //设置定时初值 TF0 = 0; //清除TF0标志 TR0 = 1; //定时器0开始计时 E
2020-08-01 14:47:47 413 1
原创 蓝桥杯单片机第3届省赛_自动售水机
题目代码timer.c#include <timer.h>void Timer0Init(void) //1毫秒@11.0592MHz{ AUXR |= 0x80; //定时器时钟1T模式 TMOD &= 0xF0; //设置定时器模式 TL0 = 0xCD; //设置定时初值 TH0 = 0xD4; //设置定时初值 TF0 = 0; //清除TF0标志 TR0 = 1; //定时器0开始计时 EA=ET0=1;}timer.h#i
2020-08-01 11:46:34 734
原创 蓝桥杯单片机第十三篇_串口通信
串口调试的工具可以直接用STC_ISP:同样波特率的计算也可以用软件帮你算上位机发送数据给下位机上位机就是电脑操作方,下位机就是接收方,也就是单片机,当接受到电脑给的数据,识别后作出想要的操作#include <stc15.h>unsigned char buf[12];unsigned char num=0;void UartInit(void) //[email protected]{ SCON = 0x50; //8位数据,可变波特率 AUXR |=
2020-07-31 20:51:18 884
原创 蓝桥杯单片机第十二篇_PWM
PWM波输出可以用来调节电压的大小,蓝桥杯考的基本是灯亮度的调节用定时器法实现PWM输出以RB2调节灯的亮度为例子#include <stc15.h>void Timer1Init(void) //100微秒@12.000MHz{ AUXR &= 0xBF; //定时器时钟12T模式 TMOD &= 0x0F; //设置定时器模式 TL1 = 0x9C; //设置定时初值 TH1 = 0xFF; //设置定时初值 TF1 = 0; //清除T.
2020-07-31 20:29:26 531
原创 蓝桥杯单片机第十一篇_NE555
原理很简单就是将定时器初始化为计数模式,对输入到P34(T0)的脉冲进行计数,1S的计数值即为频率值测量频率需要将J3-15(SIGNAL)与J3-16(P34)短接。转动RB3就可以看到数值的变化代码采用了定时器0设置为计数模式,定时器1来计时1S#include <stc15.h>unsigned int fre;void TimerInit(void) //1毫秒@12.000MHz{ AUXR &= 0xBF; //定时器时钟12T模式 TM.
2020-07-31 20:20:55 1243
原创 蓝桥杯单片机记录第十篇_超声波
采用了定时器法,进行超声波测距sonic.c#include <sonic.h>sbit TX=P1^0; //发射引脚sbit RX=P1^1; //接受引脚void Timer1Init(void) //12微秒@12.000MHz{ AUXR &= 0xBF; //定时器时钟12T模式 TMOD &= 0x0F; //设置定时器模式 TL1 = 0xF4; //设置定时初值 TH1 = 0xFF; //设置定时初值 TF1 .
2020-07-31 20:08:00 224
原创 蓝桥杯记录第九篇_EEPROM(储存)
驱动驱动同样是用的IIC#include <iic.h>#include "intrins.h"//_nop_()数量要是51的7倍左右#define somenop {_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_()
2020-07-23 18:31:42 976
原创 蓝桥杯单片机记录_第八篇_ADC(模数转换)
驱动驱动用的是IIC#include <iic.h>#include "intrins.h"//这里需要在原有驱动的基础上复制7次#define somenop {_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_n
2020-07-22 18:29:59 2498 1
原创 蓝桥杯记录第七篇_DS1302(时钟)
驱动#include <ds1302.h>#include <intrins.h>sbit SCK=P1^7; sbit SDA=P2^3; sbit RST = P1^3; // DS1302复位void Write_Ds1302(unsigned char temp) { unsigned char i; for (i=0;i<8;i++) { SCK=0; SDA=temp&0x01; temp>&
2020-07-21 18:37:17 367
原创 蓝桥杯单片机记录_第六篇_DS18B20(温度)
一 驱动(有改进)#include <ds18b20.h>sbit DQ = P1^4; //单总线接口//单总线延时函数void Delay_OneWire(unsigned int t) //STC89C52RC{ t*=12; //因为驱动是用的是89C51,而15的要在51的基础上乘12 while(t--);}void Delay1ms() //@12.000MHz //启动之后根据时序图要有一定的延时{ unsigned char
2020-07-17 10:39:38 905 1
原创 蓝桥杯单片机记录_第五篇_矩阵按键(长短按)
原理图需要将跳线帽往左边插一 只有短按的矩阵扫描法keybord.c:#include <keybord.h>unsigned char i=0,key_value,key_sum=0,key_press;void key_read(void){ P3=0XF0; //P34,P35拉高 P42=P44=1; //拉高 if(P44==0||P42==0||P35==0||P34==0) //当这4个有一个为0了,就说明有按键按下 {
2020-07-13 12:26:55 988
原创 蓝桥杯单片机记录_第四篇_独立按键(长短按)
独立按键独立按键的原理图:其中,S4,S5,S6,S7是独立按键,需要用跳线帽接右边:一 只有短按的代码:key.h#ifndef _KEY_H_#define _KEY_H_#include <STC15F2K60S2.H>sbit k4=P3^3;sbit k5=P3^2;sbit k6=P3^1;sbit k7=P3^0;extern unsigned char k4_press;extern unsigned char k5_press;
2020-07-12 20:52:05 747
原创 蓝桥杯单片机记录_第三篇_数码管
数码管1.先要选择Y6C,进行位选选择Y7C,进行端选段选的原理:P00~P07分别控制a,b,c,d,e,f,g,dp,期中dp是小数点,当为0时为亮。那么比如说要显示不带小数的数字“0”,我们就要让a=0,b=0,c=0,d=0,f=0,g=1,dp=1;那么就是P0=0XC0; 以此类推可以得到带小数的数字“0” 应该为P0=0X40;代码:smg.c:/*通过视觉暂留的方式用定时器的方法显示数码将smg_display();放在1ms的定时器扫描其实相当于流水灯,只不
2020-07-12 18:14:32 536 1
原创 蓝桥杯单片机记录_第二篇_锁存器
锁存器:因为板子的资源有限,所以就有了锁存器这个东东,也是一个神器,他可以让我们孩子操作P0口就可以控制很多东西,比如考的LED,数码管,继电器,蜂鸣器之类的,特别是蜂鸣器,由于电路设计的漏洞,如果你不去关它,上电后就疯狂响,吵死了,一开始学的时候,不知道上电要关闭,一直响个不停,后面才知道整么用,期间差点没被舍友骂死哈哈哈。原理图:我的理解是,通过对P25,P26,P27选择,得到是Y(X)口通入数据:P2=0X80时,后面的三位分别为 100 , 对应的是 0100 也就是选中了Y4C(控
2020-07-12 17:23:30 655 1
原创 蓝桥杯单片机记录_第一篇_定时器
#我的单片机入门就是蓝桥杯单片机比赛了,一直没有记录我的学习记录,一直也都是读别人的博客,突发奇想,想自己也写一下学习记录#基础模块:定时器
2020-07-12 16:48:42 428
历届小车资料(汇总).zip
2020-08-22
4路驱动(麦克纳姆轮).rar
2020-07-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人