电子系统设计与创新基础训练

电子系统设计课程组

目录

  • 1 实训管理
    • 1.1 实训动员
    • 1.2 实训大纲
    • 1.3 实训流程
    • 1.4 实训课表
    • 1.5 实训考核
      • 1.5.1 课程成绩评定方法
      • 1.5.2 课程成绩评定方法-清单
      • 1.5.3 课程出勤要求
    • 1.6 实训安排
      • 1.6.1 带班老师-助教-班级负责人-教室安排
      • 1.6.2 考勤表-助教每日记录并上报助管
      • 1.6.3 实训教室卫生与安全
      • 1.6.4 工具箱、实验板、元器件领用-
      • 1.6.5 焊接分组-表格-维修填表保修
      • 1.6.6 焊接流程与注意事项
    • 1.7 实训作业
      • 1.7.1 作业1-“STC-B“学生用测试记录表
      • 1.7.2 作业2:STC-B案例测试作业
      • 1.7.3 作业3:实训中期总结
      • 1.7.4 作业4:学习板制作质量管理与分析报告(每班一份)
      • 1.7.5 作业5:创新设计选题
      • 1.7.6 作业6:创新设计(大作业)报告
  • 2 学习板制作
    • 2.1 焊接前准备
    • 2.2 按键焊接
    • 2.3 晶体1焊接
    • 2.4 电池座焊接
    • 2.5 无源蜂鸣器焊接
    • 2.6 数码管焊接
    • 2.7 红外发射管焊接
    • 2.8 红外接收管焊接
    • 2.9 霍尔传感器焊接
    • 2.10 温度传感器焊接
    • 2.11 光敏电阻焊接
    • 2.12 振动传感器焊接
    • 2.13 32768Hz晶体2焊接
    • 2.14 拓展接口插座焊接
    • 2.15 电路板底座安装
  • 3 贴片生产流程介绍
    • 3.1 贴片生产流程介绍(一)
    • 3.2 贴片生产流程介绍(二)
    • 3.3 贴片生产流程介绍(三)
    • 3.4 一些生产过程
  • 4 学习板功能示例
    • 4.1 相关软件与使用说明
      • 4.1.1 STC-B学习板常用软件
      • 4.1.2 常用软件安装说明
      • 4.1.3 STC-ISP软件的使用
      • 4.1.4 学习板概况、STC-B学习板原理图和STC15F2K60S2数据手册
    • 4.2 第一类案例
      • 4.2.1 流水灯
      • 4.2.2 八位数码管动态扫描
      • 4.2.3 三按键测试
      • 4.2.4 步进电机测试
      • 4.2.5 振动传感器
      • 4.2.6 霍尔磁场检测
      • 4.2.7 蜂鸣器测试
      • 4.2.8 导航按键测试
      • 4.2.9 温度与光照测量
      • 4.2.10 串口通信
      • 4.2.11 485双机通信
      • 4.2.12 红外测试
      • 4.2.13 非易失性存储器
      • 4.2.14 实时时钟测试
      • 4.2.15 FM收音机
      • 4.2.16 双通道电压表
    • 4.3 第二类案例
      • 4.3.1 八位数码管滚动显示
      • 4.3.2 八位数码管+流水灯
      • 4.3.3 可变亮度的数码管显示
      • 4.3.4 扫描频率可改变的电子钟
      • 4.3.5 可控步进电机
      • 4.3.6 直流电机控制
      • 4.3.7 可变调的蜂鸣器
      • 4.3.8 电子音乐
      • 4.3.9 导航按键与数字按键综合控制数码管
      • 4.3.10 红外通信1
    • 4.4 第三类案例
      • 4.4.1 按键消抖计数
      • 4.4.2 乒乓球游戏
      • 4.4.3 可切换内容的电子音乐
      • 4.4.4 可振动感应的电子音乐
      • 4.4.5 振动声光报警器
      • 4.4.6 可同步显示歌词的ABC英文歌
      • 4.4.7 看谁手速快
      • 4.4.8 光照报警器
      • 4.4.9 光敏开关
      • 4.4.10 光敏计数
      • 4.4.11 红外通信2
      • 4.4.12 便携式温度采集器
      • 4.4.13 可校准的实时时钟
      • 4.4.14 多功能电子钟
      • 4.4.15 可与PC通信的实时时钟
      • 4.4.16 多功能收音机
      • 4.4.17 超声波测距
      • 4.4.18 倒车雷达
      • 4.4.19 电子秤
      • 4.4.20 电子尺
      • 4.4.21 电子转角测量
      • 4.4.22 双通道秒表
      • 4.4.23 比赛发令与双通道计时
      • 4.4.24 基于PC的数据采集系统
      • 4.4.25 基于红外多机通信系统
      • 4.4.26 红外Ir组网示例
      • 4.4.27 基于485多机通信系统
      • 4.4.28 基于Andriod的数据采集系统
      • 4.4.29 RFID读卡器
    • 4.5 第四类案例
      • 4.5.1 格力空调遥控器
      • 4.5.2 三轴加速度测试(电子水平尺)
      • 4.5.3 基于485总线的评分系统
  • 5 基础编程
    • 5.1 流水灯
    • 5.2 八位数码管动态扫描
    • 5.3 八位数码管+流水灯
    • 5.4 八位数码管滚动显示
    • 5.5 可变亮度的数码管显示
    • 5.6 扫描频率可改变的电子钟
    • 5.7 按键消抖计数
    • 5.8 三按键测试
    • 5.9 霍尔磁场检测
    • 5.10 数码管显示DEMO
    • 5.11 步进电机
    • 5.12 可控步进电机
    • 5.13 蜂鸣器
    • 5.14 可变调的蜂鸣器
    • 5.15 振动传感器
  • 6 基础综合
    • 6.1 电子音乐
    • 6.2 可切换内容的电子音乐
    • 6.3 可振动感应的电子音乐
    • 6.4 振动声光报警器
  • 7 外设编程
    • 7.1 导航按键与数字按键结合
    • 7.2 温度与光照测试
    • 7.3 光照报警器
    • 7.4 光敏开关
    • 7.5 串口通信
    • 7.6 485双机通信
    • 7.7 红外测试
    • 7.8 红外通信1
    • 7.9 红外通信2
    • 7.10 非易失存储器测试
    • 7.11 三轴加速度测试
    • 7.12 实时时钟测试
    • 7.13 可校准的实时时钟
    • 7.14 FM收音机
    • 7.15 扩展接口测试(双通道电压表)
    • 7.16 超声波测距
  • 8 创意综合
    • 8.1 乒乓游戏
    • 8.2 显示歌词的ABC英文歌
    • 8.3 看谁手速快
    • 8.4 光敏计数
    • 8.5 格力空调遥控器
    • 8.6 多功能电子钟
    • 8.7 可与PC通信的实时时钟
    • 8.8 多功能收音机
    • 8.9 倒车雷达
    • 8.10 电子秤
    • 8.11 电子尺
    • 8.12 电子转角测量
    • 8.13 基于PC的数据采集系统
    • 8.14 基于红外多机通信系统
    • 8.15 基于485多机通信系统
    • 8.16 基于485总线的评分系统
    • 8.17 基于Android的数据采集系统
    • 8.18 RFID读写实验
    • 8.19 多功能MODBUS节点案例
    • 8.20 仓库实时监测系统-案例演示
      • 8.20.1 节点1使用说明
      • 8.20.2 节点2使用说明
      • 8.20.3 节点3使用说明
    • 8.21 大棚蔬菜-安防系统+收菜系统
  • 9 系列讲座
    • 9.1 计算机系统硬件与软件的 实践、认识、开发、创新(徐成)
    • 9.2 单片机学习入门(刘三一)
    • 9.3 软件测试与开发(刘峰)
    • 9.4 硬件仿真步骤
    • 9.5 ADC应用(张洪杰)
    • 9.6 51单片机定时器和中断(钱彭飞)
    • 9.7 串口通信(骆坚)
  • 10 直播讲座
    • 10.1 第一讲:课程介绍与安排(徐成)
    • 10.2 ​第二讲:学习板原理(徐成)
    • 10.3 ​第三讲:软件开发与测试(刘峰)
    • 10.4 第四讲:开关量检测与仿真(张洪杰)
    • 10.5 第五讲:单片机介绍(刘三一)
    • 10.6 第六讲:STC-B单片机BSP概述(徐成)
    • 10.7 第七讲:基于STCBSP的应用程序设计(徐成)
    • 10.8 第八讲:STC-B DEMO BSP(张洪杰)
  • 11 FPGA选修部分
    • 11.1 学习板使用步骤
    • 11.2 固件烧写步骤
    • 11.3 FPGA学习板及案例说明
    • 11.4 EP1C3学习板原理图
    • 11.5 系列讲座
      • 11.5.1 电子钟实例设计与验证(方恺晴)
      • 11.5.2 vhdl到verilog(潘建军)
      • 11.5.3 VHDL硬件描述语言(凌纯清)
  • 12 实训管理(2019)
    • 12.1 实训动员
      • 12.1.1 2017工程训练总动员
      • 12.1.2 (2017级)夏季学期实训管理
      • 12.1.3 第三届电子系统工程技能培训竞赛介绍(2019)
    • 12.2 实训管理制度
      • 12.2.1 夏季小学期硬件实训----学生手册
      • 12.2.2 夏季小学期硬件实训---助教手册
      • 12.2.3 夏季小学期硬件实训---教师手册
      • 12.2.4 夏季小学期硬件实训---事务主管手册
    • 12.3 课程相关通知
      • 12.3.1 通知1-助教动员会
      • 12.3.2 通知2-实训前2周时间调整通知
      • 12.3.3 通知3-7月1日实训动员通知
      • 12.3.4 通知4-背板总工艺师检查
      • 12.3.5 新建课程目录
      • 12.3.6 提交“EP1C3学习板”申请书
      • 12.3.7 中期验收安排
    • 12.4 实训大纲
    • 12.5 课表
      • 12.5.1 电子系统设计(1,2周)
      • 12.5.2 软件设计(3,4周)
    • 12.6 实训安排
      • 12.6.1 实训安排整体说明
      • 12.6.2 实训期间实验室工作安排
      • 12.6.3 老师-助教-班级学生负责人(2021)
      • 12.6.4 教室分配与名单(序号为学生座位编号)
    • 12.7 实训流程图
    • 12.8 实训所需表格
    • 12.9 实训考核
      • 12.9.1 课程出勤要求
      • 12.9.2 实训成绩评定方法
      • 12.9.3 课程成绩评定方法_清单_2019
        • 12.9.3.1 焊接质量检查与评分
      • 12.9.4 期末验收评分标准(2019)
      • 12.9.5 实训总验收要求与成绩汇总(2019)
    • 12.10 实训竞赛
      • 12.10.1 第三届电子系统工程技能培训竞赛方案书
      • 12.10.2 第三届电子系统工程技能培训竞赛报名通知
      • 12.10.3 附件
    • 12.11 2016级评优作品汇总
    • 12.12 实训上交资料目录
      • 12.12.1 硬件实训资料第二册(封面)-模板(计科1703)
      • 12.12.2 硬件实训资料第二册目录-模板(计科1703)
      • 12.12.3 硬件实训资料第三册-模板(大作业报告封面目录)
      • 12.12.4 硬件实训资料第四册-封面与目录-模板
  • 13 实训管理2020夏季学期
    • 13.1 实训大纲
    • 13.2 实训课表
    • 13.3 2020年实训流程(18级)
    • 13.4 实训考核
      • 13.4.1 课程成绩评定方法
      • 13.4.2 课程成绩评定方法_清单_2020
      • 13.4.3 课程出勤要求
    • 13.5 实训安排
      • 13.5.1 带班老师-助教-班级联络人安排
      • 13.5.2 实训教室以及座位号安排
      • 13.5.3 考勤表-助教每天记录并上报
      • 13.5.4 实训教室安全与卫生-
      • 13.5.5 工具箱、实验板、元器件领用-
      • 13.5.6 焊接与维修-
      • 13.5.7 焊接流程与维修-
      • 13.5.8 第一阶段在线验收
      • 13.5.9 实训第二阶段安排
      • 13.5.10 考勤与考核细则变更(8-29)
      • 13.5.11 亚克力背板时间安排
    • 13.6 实训作业
      • 13.6.1 作业1(stc-b测试记录表)-2021
      • 13.6.2 作业2(stc-b案例测试作业)-2021
      • 13.6.3 作业3(质量分析报告)2021
      • 13.6.4 作业3(阶段实验总结)-2021
      • 13.6.5 作业4(创新设计选题表)
      • 13.6.6 作业5(创新设计报告)
      • 13.6.7 作业6(背板logo设计)
  • 14 亚克力背板设计
    • 14.1 产品背板
    • 14.2 安排与表格
    • 14.3 法律与承诺授权
    • 14.4 软件环境
    • 14.5 绘制标识
    • 14.6 极简设计
    • 14.7 任务规划设计
    • 14.8 任务讨论
    • 14.9 激光非金属加工
    • 14.10 亚克力背板生产
  • 15 电路板检测
    • 15.1 介绍
    • 15.2 任务规划设计
格力空调遥控器



格力空调遥控器程序设计说明

1   工程文件下载:


2    程序设计思想与总体框架说明

        2.1   程序设计思想

该程序主要分为三个模块,即按键模块,数码管显示模块,红外通信模块。按键模块用定时器0计数,每个1ms对按键状态进行一次扫描,在连续扫描100次的过程中如果有一般的次数某个按键处于按下状态则表示该按键已经按下触发相关功能;数码管显示模块也是每隔1ms扫描一个数码管,将开关状态显示在第一个数码管,将温度值显示在第7,8个数码管上;红外通信模块用定时器1中断函数进行发送并控制其发送时间,根据格力空调遥控编码原理依次发送起始码+35位数据码+连接码+32位数据+停止码,低电平时发送38KHZ红外波,高电平不发送。

2.2   程序总体框架流程

1  程序总体流程图

程序相关宏定义、变量和函数说明

3.1宏定义和变量说明

1程序中相关宏和变量说明表

                                                                                                                                    

 

变量名

 
 

初始值

 
 

含义

 
 

 
 

IR_OUT

 
 

P35

 
 

红外发射端口P3.5的别名

 
 

TIMER01MSTH0

 
 

0xfc

 
 

定时器012T16位手动装载模式下定时1ms时寄存器TH0的初始值

 
 

TIMER01MSTL0

 
 

0x66

 
 

定时器012T16位手动装载模式下定时1ms时寄存器TL0的初始值

 
 

TIMER113USTH1

 
 

0xF4

 
 

定时器112T8位自动装载模式下定时13us时寄存器TH1的初始值

 
 

TIMER113USTL1

 
 

0xF4

 
 

定时器112T8位自动装载模式下定时13us时寄存器TL1的初始值

 
 

TIMER1600USNUM

 
 

46

 
 

定时器1在每13us中断一次的情况下计时600us需要的中断次数

 
 

TIMER11600USNUM

 
 

123

 
 

定时器1在每13us中断一次的情况下计时1600us需要的中断次数

 
 

TIMER14500USNUM

 
 

346

 
 

定时器1在每13us中断一次的情况下计时4500us需要的中断次数

 
 

TIMER19000USNUM

 
 

692

 
 

定时器1在每13us中断一次的情况下计时9000us需要的中断次数

 
 

TIMER120000USNUM

 
 

1538

 
 

定时器1在每13us中断一次的情况下计时20000us需要的中断次数

 
 

DIGTUBENUM

 
 

8

 
 

数码管个数

 
 

DIGGROUPNUM

 
 

8

 
 

数码管组数(用于扩展)

 
 

KEYNUM

 
 

8

 
 

按键个数

 
 

KEYSENSITY

 
 

100

 
 

按键扫描次数,即每采集100次按键数据更新一次按键状态

 
 

Uint8 Timer01msFlag1

 
 

0

 
 

定时器计时1ms标志变量1,用于扫描数码管

 
 

Uint8 Timer01msFlag0

 
 

0

 
 

定时器计时1ms标志变量0,用于扫描按键

 
 

uint8 IRFLAG

 
 

0

 
 

判断是否发送38KHZ红外波的标志变量,1表示发送,0表示不发送。

 
 

uint8 GreeInstructions[30][9]

 

 

格力空调指令码

 
 

uint8  digtalduan[18]

 

 

0~f数码管显示值

 
 

struct  keyfunc

 

 

按键相关结构体

 
 

uint16  timer0Num

 
 

0

 
 

定时器1中断次数,用于控制发送电平宽度。

 

3.2 函数说明

2程序中主要函数说明表

                                                                                                                               

 

函数名

 
 

参数

 
 

返回值

 
 

功能描述

 
 

Device.c

 
 

keyInit()

 
 

void

 
 

void

 
 

初始化A/D,将通道P1.7作为AD输入。

 
 

keyScan

 
 

void

 
 

void

 
 

扫描按键,判断各按键状态

 
 

digScan

 
 

Void

 
 

void

 
 

数码管扫描,将相应数据显示到数码管上。

 
 

Timer0Init()

 
 

void

 
 

void

 
 

初始化定时器0,每1ms触发一次中断

 
 

Timer1Init()

 
 

void

 
 

void

 
 

初始化定时器1,每13us触发一次中断

 
 

IRC.c

 
 

SendS

 
 

void

 
 

void

 
 

发送起始码

 
 

SendC

 
 

void

 
 

void

 
 

发送连接码

 
 

Send0

 
 

void

 
 

void

 
 

发送数据0

 
 

Send1

 
 

void

 
 

void

 
 

发送数据1

 
 

SendInstructions

 
 

uint8  openORClose,uint8 temperature

 
 

void

 
 

发送一整条格力空调遥控指令

 
 

       Interupt.c

 
 

int_timer0

 
 

Void

 
 

void

 
 

定时器0中断函数,每中断将标志变量Timer01msFlag0Timer01msFlag11

 
 

int_timer1

 
 

void

 
 

void

 
 

定时器1中断函数,用来控制红外发射以及发送电平宽度。

 
 

Main.c

 
 

configinIt

 


 

初始化IO

 
 

main

 
 

void

 
 

void

 
 

初始化IO,定时器,AD,扫描数码管和按键并作出相应的动作。

 

4  相关寄存器配置

4.1 定时器0相关寄存器配置

AUXR &= 0x7F;         

       TMOD &= 0xF0;         

       TMOD |= 0x01;           

       IE |=0x02;

       TL0 = TIMER01MSTL0;            

       TH0 = TIMER01MSTH0;           

       TF0 = 0;        

       TR0 = 1;

4.2 定时器1相关寄存器配置

AUXR &= 0xBF;         

       TMOD &= 0x0F;         

       TMOD |= 0x20;

       IE |=0x08;

       IP |=0x08;

       TF1 = 0;        

       TR1=0;

4.3 IO相关寄存器配置

P2M0=0xff;

      P2M1=0x00;

      P0M0=0xff;

      P0M1=0x00;

       P3M0|=0xA0;

       P3M1|=0x80;

       IR_OUT=0;

       P2=0x00;

       P0=0x00;