嵌入式系统设计性实验报告
嵌入式系统实验报告

嵌入式系统实验报告在本学期的嵌入式系统课程中,我与我的实验伙伴进行了多次实验。
在这篇报告中,我将分享我们实验的过程和结果。
实验一:GPIO控制LED灯在这个实验中,我们使用了Raspberry Pi 3B+开发板和一根杜邦线。
我们在电路板上将一盏LED灯与GPIO引脚连接起来,并编写了一个程序来控制这个引脚的电平状态。
在这个实验中,我们学习了GPIO的基本概念以及如何使用Python编程语言编写GPIO控制程序。
我们成功地让LED灯在不同的时间间隔内闪烁,并且了解了如何使用GPIO.setup()和GPIO.output()函数来控制GPIO引脚的输入和输出。
实验二:串口通信在第二个实验中,我们使用了两个Raspberry Pi 3B+开发板和两根串口线。
我们连接了两个板子的GPIO引脚,使得它们可以通过串口进行通信。
我们使用Python编写了两个程序来进行通信。
一个程序将发送一条消息,另一个程序将接收这个消息并将其打印出来。
通过使用串口通信,我们学会了如何使用Python编写程序来完成数据交换,并掌握了串口通信的基本概念。
实验三:Pi camera模块在第三个实验中,我们使用了Pi camera模块和一个Raspberry Pi 3B+开发板。
我们将摄像头连接到开发板上,并编写了一个程序来捕捉摄像头图像。
我们学习了如何使用Python编程语言来控制Pi camera模块,包括如何设置摄像头参数并如何捕捉静态图像。
我们还尝试了使用OpenCV库来处理图像。
实验四:蓝牙控制在最后一个实验中,我们使用了一个蓝牙透传模块、Raspberry Pi 3B+开发板和一些电路元件。
我们将蓝牙透传模块连接到GPIO引脚,并编写了一个程序来通过蓝牙信号控制电机。
在这个实验中,我们学习了如何使用蓝牙模块进行无线控制。
我们通过使用Python编写控制程序,成功地将蓝牙信号转换成GPIO引脚的电平信号来控制电机。
总结在这个嵌入式系统的实验中,我们学习了许多关于嵌入式系统的知识和技能。
嵌入式系统实验报告

嵌入式系统实验报告引言嵌入式系统作为一种广泛应用于各行各业的计算机系统,其本身具有一定的难度与挑战。
本实验报告将围绕嵌入式系统的设计、开发以及应用展开讨论,旨在总结并分享在实验中所获得的经验与知识。
一. 实验背景嵌入式系统是指以特定功能为目标的计算机系统,其设计与开发过程相较于传统的计算机系统更为复杂和精细。
本次实验的主要目标是通过设计一个基于嵌入式系统的智能家居控制器,来探索嵌入式系统的应用与实践。
二. 实验内容2.1 硬件设计嵌入式系统的硬件设计是整个实验的基础,其合理性与稳定性直接影响系统的性能和可靠性。
在本次实验中,我们选择了一块主频为xx的处理器作为核心,配备了丰富的外设接口,如GPIO、串口等。
我们还为系统增加了一块液晶显示屏和一组按键,以实现简单的用户交互。
2.2 软件开发在硬件设计完成后,我们开始进行软件开发。
首先,我们需要选择一个合适的操作系统作为嵌入式系统的基础。
针对本次实验,我们选择了xx操作系统,其具备较强的实时性和稳定性,能够满足我们对系统性能的要求。
接着,我们进行了嵌入式系统的驱动程序开发。
通过编写各个外设的驱动程序,我们实现了与液晶显示屏和按键的交互,并将其与处理器进行了适当的接口配置。
另外,我们还开发了嵌入式系统的应用程序。
通过编写智能家居控制器的代码,我们成功实现了对家居设备的远程控制和监测。
用户可以通过液晶显示屏和按键进行交互,实现对家居设备的开关、调节和状态查看等操作。
三. 实验结果与分析经过实验测试,我们发现嵌入式系统在智能家居领域的应用具有较高的可行性与实用性。
通过嵌入式系统的控制,用户可以方便地实现对家居设备的远程操控,提升了家居智能化的程度。
同时,嵌入式系统的实时性和稳定性使得智能家居控制器具备了较高的安全性和可靠性。
然而,在实验过程中我们也遇到了一些挑战。
其中,系统的驱动程序开发是较为复杂的一环,需要仔细理解硬件接口和协议,并进行合理的配置。
此外,系统的稳定性和功耗管理也是需要重点关注的问题。
嵌入式系统实验报告一

void led_blink() { GPL2CON = 0x00000001; GPK1CON = 0x00000010; while(1) { GPL2DAT = 1; GPK1DAT = 0; delay(0x80000); GPL2DAT = 0; GPK1DAT = 0x2; delay(0x80000); } } 在上面的代码中,同 GPL2 的控制类似,对 GPK1 进行了设置,其用于实现 DC3.3V 电源使能控 制,其原 理图连接如下图所示,配置方法同 GPL 类似。
第五步:编写 Makefile,通过 make 命令生成可执行程序
六、实验结果及总结
将程序烧录到开发板中运行后可以看到 LED 灯交替亮灭
嵌入式系统设计实验报告一:裸机条件下 led 灯操作
一、实验目的
1、熟悉开发板基本结构及相关接口连接、安装裸机程序下载 DNW 驱动、熟练掌握裸机程序下 载方法; 2、熟悉基本软件开发环境:Ubuntu 下 shell 基本命令及操作、Ubuntu 下汇编及 C 程序的编译 过程及 方法、学会修改 Makefile 文件基本内容; 3、设计、编译及调试 led 程序
二、实验设备
开发板:迅为 Exynos iTop-4412 精英板; 开发工具:UltraEdit 宿主机:VmWare12.04 (64bit) 编译工具:arm-linux-gcc4.5.1
三、实验内容
控制原理说明:如下原理图及芯片管脚链接,由 GPL2_0 管脚输出不同电平控制三极管导通或 截止,从而 实现 LED 灯的亮或灭。
四、实验硬件原理分析
第一步:设置 GPL2_0 相对应的控制寄存器 GPL2CON,基址 0x1100_0000,偏移量如下图:
嵌入式系统设计性实验报告

嵌入式系统设计性实验报告本次实验的目标是设计一个能够追踪并控制智能小车运动的嵌入式系统。
具体来说,我们需要设计一套硬件电路和相应的软件程序,使得小车能够通过传感器感知周围环境,并通过控制器控制电机的转动实现运动。
实验中使用了Arduino开发板作为嵌入式系统的核心。
Arduino开发板集成了一个微控制器和一系列输入输出接口,可以通过编写简单的代码控制各种外设。
在本次实验中,我们使用了超声波传感器作为感知器,直流电机作为执行器。
首先,我们需要连接硬件电路。
超声波传感器负责感知周围环境,通过发送超声波脉冲并接收回弹的信号来计算距离。
直流电机则负责控制小车的运动,根据软件的控制信号,控制电机的转速和方向。
在连接硬件电路时需要注意电路的正确连接,以免出现短路或其他损坏。
接下来,我们需要编写软件程序。
首先,我们需要初始化传感器和电机的接口,并设置合适的参数。
然后,在主循环中,我们不断地读取传感器的数值,并根据读取到的数值进行相应的处理。
比如,当距离超过一定阈值时,我们可以控制电机停止运动;当距离小于阈值时,我们可以控制电机朝一些方向运动。
除了距离的处理,我们还可以根据需要处理其他的传感器读数,比如温度、压力等。
最后,当实验结束时,我们需要关闭接口并释放相应的资源。
经过实验,我们成功地设计并实现了一个能够追踪并控制智能小车运动的嵌入式系统。
实验结果表明,我们的系统可以准确地感知周围环境,并根据环境的变化来控制小车的运动。
系统的性能良好,响应速度较快,可以在实际应用中发挥较好的作用。
总结而言,本次实验通过设计一个能够追踪并控制智能小车运动的嵌入式系统,使我们对嵌入式系统设计有了更深入的认识。
通过实验,我们熟悉了嵌入式系统的硬件电路和软件程序的设计过程,提高了对嵌入式系统设计的理解和实践能力。
此外,我们还深刻认识到嵌入式系统在实际应用中的广泛性和重要性。
希望通过今后进一步的学习和实践,能够在嵌入式系统设计领域取得更好的成绩。
精选嵌入式系统实习报告3篇

精选嵌入式系统实习报告3篇嵌入式系统实习报告篇1ARM嵌入式系统综合设计一.实习时间和地点安排1.实习时间:20xx年XX月03 日—— 20xx年XX月14日,共两周的时间。
2.每天的实习时间安排:上午:8:30——11:30下午:13:30——15:303.实习地点:校内。
二.实习目的1.掌握电子元器件的焊接原理和方法。
2.掌握ARM7 LPC2132控制程序的编写方法。
3.掌握调试软件和硬件的方法。
三.实习内容与要求1.根据设计要求焊接好电路板并测试焊接无误。
2.绘制流程图并编写程序。
3.编译通过后,将程序下载到LPC2132进行调试。
4.调试成功后编写实习报告。
四.LPC2132芯片介绍LPC2132最小系统图及其介绍概述LPC2132是基于一个支持实时仿真和嵌入式跟踪的32/16 位 ARM7TDMI-STM CPU 的微控制器,并带有 32kB、64kB、512 kB 的嵌入的高速Flash 存储器。
128 位宽度的存储器接口和独特的加速结构使 32 位代码能在最大时钟速率下运行。
对代码规模有严格控制的应用可使用 16 位 Thumb?模式将代码规模降低超过 30%,而性能的损失却很小。
较小的封装和极低的功耗使 LPC2131/2132/2138 可理想地用于小型系统中,如访问控制和 POS 机。
宽范围的串行通信接口和片内 8/16/32kB 的 SRAM 使LPC2131/2132/2138 非常适用于通信网关、协议转换器、软 modem 、声音辨别和低端成像,为它们提供巨大的缓冲区空间和强大的处理功能。
多个 32 位定时器、1 个或 2 个 10 位 8 路 ADC 、10 位 DAC 、PWM 通道和 47 个 GPIO 以及多达9 个边沿或电平触发的外部中断使它们特别适用于工业控制和医疗系统。
特性1.小型 LQFP64 封装的 16/32 位 ARM7TDMI-S 微控制器。
嵌入式实验四实验报告

嵌入式实验四实验报告实验四:嵌入式编程设计
实验设计目的:
1. 学习使用嵌入式开发工具进行编程设计;
2. 学习使用C语言编写嵌入式程序;
3. 学习使用GPIO模块进行输入输出;
4. 学习使用中断处理函数。
实验器材:
1. 嵌入式开发板;
2. USB数据线;
3. 电脑;
4. LED灯;
5. 电阻;
6. 蜂鸣器;
7. 其他必要的电路元件。
实验步骤:
1. 连接开发板和计算机,安装开发板驱动程序;
2. 打开嵌入式开发工具,创建一个新的工程;
3. 在工程中添加一个C文件,编写程序;
4. 编写程序实现以下功能:
- 使用GPIO模块控制LED灯的亮、灭;
- 使用GPIO模块读取按键状态;
- 使用GPIO模块控制蜂鸣器的开、关;
- 使用Timer模块计时;
- 使用中断处理函数处理外部中断;
- 其他必要的功能;
5. 编译程序,下载到开发板;
6. 运行程序,测试功能是否正常。
实验结果与分析:
实验结果应当是LED灯、蜂鸣器、按键正常工作,可以通过按键控制LED灯的亮、灭、蜂鸣器的开、关。
实验总结:
通过本次实验,我学会了使用嵌入式开发工具进行编程设计,掌握了使用C语言编写
嵌入式程序的方法。
通过实验,我深入理解了嵌入式系统的原理和实现方法,对嵌入
式系统的应用有了更加深入的了解。
在今后的学习和工作中,我将能够更好地运用嵌
入式技术解决实际问题。
嵌入式系统试验报告

嵌入式系统实验报告学院:计算机科学与工程姓名:___________学号:_______________专业:_______________指导老师:______________完成日期:______________实验一:流水灯案例、8位数码管动态扫描案例一、实验目的1.1 进一步熟悉Keil C51集成开发环境调试功能的使用;1.2 学会自己编写程序,进行编译和仿真测试;1.3 利用开发板下载hex 文件后验证功能。
二、实验原理2.1 :实验原理图030B 〜I ।卜RSI I ™Hi 」 口 UICDR Hr hJJK RR 18q U I. 海水灯电浒周LhE U_EEM^Li > > 第 X > k >n - » =白 L a £0EBS2.2:工作原理2.2.1:流水灯电路中有LO,1,L2,L3,4,L5,L6,L7共八个发光二极管,当引脚LED_ SEL输入为1,对于A、B、C、D、E、F、G、H引脚,只要输入为1,则点亮相连接的发光二极管。
A〜H引脚连接STM32F108VB芯片的PE8〜PE15,程序初始化时,对其进行初始设置。
引脚LED_SEL为1时,发光二极管才工作,否则右边的数码管工作。
注意,LED SEL 连接于PB3,该引脚具有复用功能,在默认状态下,该引脚的I0不可用,需对AFIO_ MAPR寄存器进行设置,设置其为10可用。
2.2.2: 8位数码管数码管中的A~G、DP段分别连接到电路图中的A~G、H线上,当某段上有一-定的电压差值时,便会点亮该段。
当£3输入为1,也就是LED_ 5£1输入为0时,根据SELO〜SEL2的值确定选中的数码管,即位选,再根据A~H引脚的高低电平,点亮对应段,即段选。
三、实验结果3.1:流水灯对于给出的流水灯案例,下载HEX文件后,在开发板上可观察到L0-L7从左至右依次点亮,间隔300ms。
嵌入式系统 实验报告

使能 IRQ 中断。
4 装载并使能外中断;
5 选用 DebugInExram 生成目标,然后编译连接工程。
6 选择【Project】->【Debug】,启动 AXD 进行 JTAG 仿真调试。
7 全速运行程序,LED 闪烁;
8 每一次按键 Key,蜂鸣器就会转换静音或鸣响状态。
四.测试数据及运行结果
1
五.总结
1.实验过程中遇到的问题及解决办法;
由于本次实验较简单,且我们之前学习的微机原理课程也进行了流水灯的设
计实验,所以对于本次实验,我完成地很顺利,在实验中没有遇到问题。
2.对设计及调试过程的心得体会。
本次实验是本学期该课程我们进行的第一次实验,总的来说,实验不是很难,
设计过程也相对简单,其主要目的是让我们熟悉一下实验环境,并且能在实验环
6
五.总结 1.实验过程中遇到的问题及解决办法;
实验第一次运行时,蜂鸣器一直处于鸣响状态,及时按了按键,蜂鸣器还是 一直鸣叫,不产生外中断。后来仔细检查了程序,发现原来是忘记使能 EINT0 中 断了,加上 VICIntEnable = 1<<0x0e 代码,程序就能正常运行了。 2. 对设计及调试过程的心得体会。
境下进行简单的实验操作,为之后的实验打下坚实的基础。
六.附录:源代码(电子版)
#include "config.h"
const uint32 LEDS8 = 0xFF << 18;//P1[25:18]控制 LED1~LED8,低电平点亮
const uint32 KEY = 1 << 16;
//P0.16 连接 KEY1
三.方案设计
① 启动 ADS1.2IDE 集成开发环境,选择 ARM Executable Image for lpc2131
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
嵌入式系统设计性实验报告水温控制系统院别:控制工程学院专业:自动学号:5090633姓名:邱飒飒指导老师:孙文义2012年6月8日嵌入式系统设计性实验报告作者:邱飒飒班级:50906 学号:5090633摘要:在工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。
其中,温度控制也越来越重要。
在工业生产的很多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。
采用单片机对温度进行控制不仅具有控制方便、简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而大大的提高产品的质量和数量。
因此,单片机对温度的控制问题是工业生产中经常会遇到的控制问题.该实验设计基于飞思卡尔MC9S12DG128开发板平台,根据实验任务要求,完成了基于单片机的水温自动控制系统的设计该实验设计基于飞思卡尔MC9S12DG128开发板平台,根据实验任务要求,完成了水温自动控制系统的设计。
关键字:水温控制单片机MC9S12DG128一、系统设计的功能1.1 水温控制系统设计任务和要求该系统为一实验系统,系统设计任务:设计并制作一个水温自动控制系统,控制对象为1升净水,容器为搪瓷器皿。
水温可以在一定范围内由人工设定,并能在环境温度降低时实现自动控制,以保持设定的温度基本不变。
同时满足以下要求:(1)温度设定范围为40~90℃,最小区分度为1℃,标定温度≤1℃。
(2)环境温度降低时(例如用电风扇降温)温度控制的静态误差≤1℃。
(3)用十进制数码管显示水的实际温度保留一位小数。
(4)采用适当的控制方法(如数字PID),当设定温度突变(由40℃提高到60℃)时,减小系统的调节时间和超调量。
(5)温度控制的静态误差≤0.2℃。
(6)从串口输出水温随时间变化的数值。
1.2 水温控制系统部分水温控制系统是一个过程控制系统,组成框图如下所示,有控制器、执行器、被控对象及其反馈作用的测量变送组成。
图1 控制系统框图1.3 系统总体功能分析本系统是一个简单的单回路控制系统,为了实现温度的测量及自动控制,根据任务要求及要求,系统由单片机系统,前向通道,后向通道,及人机通话四个模块构成。
总体框图如图2 所示。
图2 水温控制系统总体框图1.3.1 各功能模块作用分析(1) 单片机系统是控制系统的核心,MC9S12DG128可以提供系统所需的IO口及内置的功能模块。
A/D转换模块是将外部采集到的模拟量转换为数字量,不需要加另外的AD转换芯片,在本设计实验中采用内部10位AD转换方式测量温度值。
PWM模块通过软件编程可以输出任意占空比的波形,在本设计实验中可以通过输出电压波形控制电阻丝的通断,从而模拟水的加热程度,达到控制水温的目的。
SCI模块使单片机与PC机连接,将采样温度值上传到PC机,从而可以通过PC机实时地看到温度的变化,还可以从PC机下载程序,人机交互方便。
(2)前向通路:用电位器模拟温度变化,然后进行温度值采样,主要包括热电阻的传感器,信号放大电路组成。
pt100是铂热电阻,它的阻值跟温度的变化成正比。
PT100的阻值与温度变化关系为:当PT100温度为0℃时它的阻值为100欧姆,在100℃时它的阻值约为138.5欧姆。
它的工业原理:当PT100在0摄氏度的时候他的阻值为100欧姆,它的阻值会随着温度上升而成匀速增长的;(3) 数据显示:采用了四位共阴极数码管进行显示设定温度值及测量温度值。
(4) 键盘采用4*4扫描键盘用于设定温度值(5) 继电器、电阻丝电路:通过PWM输出电压波形控制SSR固态继电器的通断,从而控制电阻丝的加热程度。
交流固态继电器(缩写 SSR)是一种全部由固态电子元件组成的新型无触点通断电子开关,为四端有源器件。
其中两个端子为输入控制端,另外两端为输出受控端,中间采用光电隔离,作为输入输出之间电气隔离(浮空)。
在输入端加上直流或脉冲信号,输出端就能从关断状态转变成导通状态(无信号时呈阻断状态),从而控制较大负载。
整个器件无可动部件及触点,可实现相当于常用的机械式电磁继电器一样的功能。
二、硬件设计原理及内容1 硬件设计原理图图3 硬件原理图硬件原理图主要包括:1.单片机最小系统部分:电源电路,晶振时钟电路,复位电路,串口通信电路,BDM调试电路2.键盘设置电路3.数码管显示电路4.输入采样电路5.输出驱动电路2 各部分电路分析2.1单片机最小系统部分2.1.1 单片机电源电路图4 单片机电源电路最小系统电源电路中,用两个电容构成滤波电路,可以改善系统的电磁兼容性,降低电源波动对系统的影响,增强电路工作稳定性。
2.1.2 单片机晶振电路图5 单片机晶振电路最小系统电路采用的是有源晶振电路。
晶振电路采用科尔皮兹振荡器,其中的晶体直接连接于有源器件(通常为双极性晶体管或场效应管)输入端与输出端之间。
一般应接一个电容、电感调谐电路,但不是必须的。
2.1.3 单片机复位电路图6 单片机复位电路复位电路可以使单片机在响应到各种外部或监测到内部系统故障时可以进行系统复位,同时可以保证系统上电时进行可靠的初始化,同时也保证对电源的监视。
2.1.4 单片机串口通信电路图7 串口通信电路串口电路主要用于连接计算机。
本次采用的是9芯接头的串行口,引脚含义如下:1.接收线信号检测(载波检测DCD) 6. 数据通信设备准备就绪(DSR)2. 接受数据线(RxD)7. 请求发送(RTS)3. 发送数据线(TxD)8.清除发送4 .数据中断准备就绪(DTR)9.振铃指示5.信号地(SG)2.1.5 单片机BDM调试电路图8 BDM调试电路单片机内置BDM仿真调试电路,外围只需接一个简单的BDM接口实现单片机的仿真调试。
由上图可以看出背景调试电路非常简单,只需两根信号线、电源和地信号即可。
注意:不能将接头插反,否则将导致硬件的损坏。
2.2 键盘设置电路图9 键盘设置电路键盘设置电路中,数字0~9用于温度值的设置,并另设两个键用于设定及确认。
2.3数码管显示电路图10 数码管显示电路数码管作为单片机系统最为常用的输出器件,在显示时候可以由数字和少量字母组合完成输出功能的系统中应用十分广泛。
数码管显示电路用于显示当前温度值。
2.4输入采样电路图11 输入采样电路输入采样电路采用热电阻测量实际温度,并转换为电压值输入到单片机的A/D模块。
2.5输出驱动电路图12 输出采样电路输出采样电路采用固态继电器来可控制电阻丝的通断。
如图所示为稳定的阻性负载,为了防止输入电压超过额定值,需设置一限流电阻Rx;当负载为非稳定性负载或感性负载时,在输出回路中还应附加一个瞬态抑制电路其中三极管用来驱动继电器。
三、系统软件设计流程3.1 程序框架结构一个整体的系统软件设计是由各个在系统里起着不同作用的模块整合在一起,从而实现系统的所要实现的功能。
此系统包括主控制程序,A/D采样数据处理程序,PID算法程序,LED显示及按键处理程序。
结构框架如下图:程序结构图3.2系统软件主程序流程图由于模块化程序的设计,通过调用程序即可实现所需使用的功能,主程序流程图如下图:图13 主程序流程框图3.3 A/D采样数据处理当采样到温度数据时,为了防止在采样过程中外界干扰而造成采样数据的不准确,必须调用温度均值处理程序,然后确定温度系数使采样转换得到的电压信号转换成温度值,并进行十进制转换,用于显示和PID计算。
其中均值处理是一个比较重要的环节,是A/D转换前必不可少的工具,流程图如下图所示:3.4 键盘及LED显示3.5数据采样中断下图是数据采样中断服程序的流程图,此中断程序采用的是2Hz中断,定时0.5秒采样一次。
4.2.5 继电器控制继电器是和单片机HCS12的PWM口相连的,它的开断完全取决于PID计算的结果。
当输出小于零说明设定值小于实际输出值,这是就要关闭电炉,同时关闭定时器的计时。
如果输出值大于设定值2摄氏度时就可以开电炉对水开始加热。
如果设定值与实际输出值差值在2摄氏度以内时,我们就调用中断程序定时加热。
下图控制程序的中断服务程序,用来对继电器定时加热。
它利用中断定时器10ms 确定加热时间,当加热时间未到时,继续时间累积,若加热时间到时,就调用关定时器子程序,停止计时。
控制程序中断程序流程图四、调试过程及数据在开始做这个设计的时候,先是把系统的每一部分都分成不同模块,每一个模块先单独调试,其具体的方法是在main.c中编写程序使每一个模块成功实现其具体的功能,之后才将各部分组合在一起,最终调试成为一个系统的。
系统的模块分为:SCI串行口输入输出模块、LED数码管显示模块、KB键盘输入模块,AD转换输入模块,PWM模块。
模块的调试过程:1.SCI串行口调试使用方法:先将SCI的初始化,让接受程序,发送程序编译通过,然后在SCI的调试主程序中通过输入字符,并让其在串口助手中显示,如果串口助手成功显示我们在主函数中输入的字符,则说明SCI串行口模块可以调用,如果显示不成功则需要继续对程序进行修改和编译。
串行口这里我遇到的问题是:a.开始串口助手中不显示主函数中发的字符解决办法:实验板的晶振16M,但是单片机MC9S12DG128中未启用锁相环,故单片机的内部总线实际上只有16M/2=8M .所以在串行口波特率要求9600时,需要在程序的串口初始化中将SCI0BDL=0X80改为SCI0BDL=0X34。
b.主函数中调用函数的功能是显示一个字符,但串口中显示一连串的相同的字符解决办法:调试程序时为全步运行,当选择单步运行时,则只显示一个字符,函数功能正确。
2.LED数码管调试使用方法:分析数码管的共阴或者共阳,让后将LED编程初始化,然后编译数码管的段选函数,位选函数。
在数码管的测试主函数中编程保证数码管能够显示我们输入的静态数字。
比如我们在主函数中,让数码管显示“0000”,4位数码能够正常显示0000,则说明数码管模块中的函数可以被调用,否则需要继续对程序进行修改和编译。
3. KB键盘输入模块在理解了4*4矩阵键盘的编程原理后,自己结合课本成功编译通过键盘程序。
并联合之前做的数码管模块和串行口通讯模块,达到了让矩阵键盘按键,数码管显示数字,同时通过串口助手在电脑上显示矩阵键盘按键的数字。
在键盘这里我遇到的问题是:a、键盘输入的数字,在数码管上不显示原因及解决办法:检查主函数后发现,键值所对应的数据类型与串口接收函数的形参类型不一致。
4.AD转换输入模块在编译通过AD转换程序后,联系数码管显示模块,用一个可变电阻(电位器)的检测采样,用单片机的AD转换通道AN06输入采样信号,将其转化为0~100可变数字,用以模拟温度0~100度的变化,并在数码管上显示。
在AD转换这里我遇到的问题是:AD采样周期的设置有问题,只需更改一下即可。