文件格式:word+c
文件大小:7.27MB
适用专业:单片机
适用年级:大学
下载次数:0 次
我要下载:点击联系下载论文编号:202925
资料简介:
课程设计-STM32数码管倒计时显示,实验报告共12页,2262字,附c程序,实物图
实验内容:
在学过的实验内容基础上完成一个完整的实验工程,除系统时钟和GPIO以及中断必须使用外,可以选加RTC、I2C、DMA和看门狗中的至少1种,要求用到键盘和数码管
实验设计:
通过键盘输入数字,用LED灯将其四位二进制形式表示出来。LED灯点亮的时间(用秒来衡量)与数字的大小相等。在点亮时间结束后,LED灯熄灭。KEY键用于结束正在进行的实验,按下KEY键,LED灯立即全部熄灭
试验原理:
1、中断设置
本程序中共有3个中断,分为两组优先级。连接KEY键的Line9的优先级设置为(0,0),其优先级最高。因为在实验过程中我们摁下KEY键时,LED灯全部熄灭,实 验结束。按键中断优先级为(1,0),RTC秒中断优先级最高,因为当我们按下KEY键时,如果KEY键键值不为0,我们就要立刻开启RTC秒中断进行计时,此时需要打断按键中断,因此,需要RTC秒中断的优先级高于数字键盘的优先级。中断优先级的设置在NVIC_Configuration完成。
2、数码管显示时间倒计时
通过按键所得到的键值用变量key将其保存。通过前面的实验,我们发现数码管上显示0~9的码制分别是0xFC,0x0C,0xDA,0xF2,0x66,0xB6,0xBE,0xE0,0xFE,0xE6,即it.c文件中数组RBuffer1中的内容,而I2C接收到的按键值为(从0到9)0,1,2,3,9,10,11,17,18,19,因此在写入数码管时需要作出相应的判断。将键值写入到数码管中是由函数 I2C_shuma_ByteWrite实现的,这个函数在i2c_ee.c文件中给出。在将键值写入数码管后,此时判断键值如果不为0,触发RTC秒中断,每发生一次秒中断,数码管的数字减一,直至为0,然后熄灭所有LED灯。
3、LED灯表示数字二进制
在 获得键值时,我们在相应的中断处理程序中加入switch语句,根据键值选择相应要点亮的LED灯,通过GPIO_ResetBits与GPIO_SetBits即可完成,这一部分比较简单。
资料文件预览:
共17文件夹,116个文件,文件总大小:7.27MB,压缩后大小:5.52MB
- 课程设计-STM32数码管倒计时显示
- xingaide4
- key+shumastm32
- project
- EWARM
- settings
- stm32_tim.dni [313.00B]
- stm32_tim.dbgdt [63.00B]
- stm32_tim.cspy.bat [2.10KB]
- Project-RiseTer.dni [543.00B]
- Project-RiseTer.dbgdt [5.06KB]
- Project-RiseTer.cspy.bat [2.21KB]
- Project.wsdt [2.22KB]
- Project.dni [543.00B]
- Project.dbgdt [2.92KB]
- Project.cspy.bat [2.10KB]
- Amr-Ter.wsdt [3.42KB]
- Debug
- Obj
- stm32_tim.pbd [323.00B]
- stm32f10x_vector.r79 [6.91KB]
- stm32f10x_it.r79 [9.60KB]
- main.r79 [13.86KB]
- cortexm3_macro.r79 [1.80KB]
- List
- stm32_tim.map [44.36KB]
- Exe
- BOOT_FLASH
- Obj
- stm32f10x_wwdg.r79 [5.18KB]
- stm32f10x_vector.r79 [7.23KB]
- stm32f10x_usart.r79 [16.44KB]
- stm32f10x_tim1.r79 [43.45KB]
- stm32f10x_tim.r79 [38.71KB]
- stm32f10x_systick.r79 [4.99KB]
- stm32f10x_spi.r79 [12.69KB]
- stm32f10x_rtc.r79 [7.11KB]
- stm32f10x_rcc.r79 [17.92KB]
- stm32f10x_pwr.r79 [6.65KB]
- stm32f10x_nvic.r79 [16.12KB]
- stm32f10x_lib.r79 [2.00KB]
- stm32f10x_iwdg.r79 [3.73KB]
- stm32f10x_it.r79 [19.14KB]
- stm32f10x_i2c.r79 [20.02KB]
- stm32f10x_gpio.r79 [12.47KB]
- stm32f10x_flash.r79 [2.85KB]
- stm32f10x_exti.r79 [5.78KB]
- stm32f10x_dma.r79 [8.37KB]
- stm32f10x_can.r79 [18.37KB]
- stm32f10x_bkp.r79 [6.60KB]
- stm32f10x_adc.r79 [19.89KB]
- main.r79 [27.41KB]
- i2c_ee.r79 [18.11KB]
- cortexm3_macro.r79 [1.81KB]
- Project-RiseTer.pbd [2.63KB]
- Project.pbd [2.40KB]
- List
- Project-RiseTer.map [75.66KB]
- Project.map [63.92KB]
- Exe
- Project-RiseTer.sim [5.82KB]
- Project-RiseTer.d79 [165.63KB]
- Project.sim [2.49KB]
- Project.d79 [143.90KB]
- stm32_tim.ewp [43.17KB]
- stm32_tim.ewd [31.21KB]
- stm32_tim.dep [5.88KB]
- stm32f10x_vector.c [3.33KB]
- readme.txt [2.50KB]
- lnkarm_ram.xcl [7.48KB]
- lnkarm_flash.xcl [7.50KB]
- cortexm3_macro.s [9.14KB]
- Project-RiseTer.ewp [45.70KB]
- Project-RiseTer.ewd [31.30KB]
- Project-RiseTer.dep [21.97KB]
- Backup (2) of Project-RiseTer.ewp [45.74KB]
- Backup (2) of Project-RiseTer.ewd [30.32KB]
- Backup of Project-RiseTer.ewp [45.74KB]
- Backup of Project-RiseTer.ewd [30.32KB]
- Amr-Ter.eww [169.00B]
- stm32f10x_it.h [3.20KB]
- stm32f10x_it.c [28.66KB]
- stm32f10x_conf.h [5.38KB]
- main.c [17.68KB]
- i2c_ee.h [2.29KB]
- i2c_ee.c [18.85KB]
- library
- src
- stm32f10x_wwdg.c [7.53KB]
- stm32f10x_usart.c [32.77KB]
- stm32f10x_tim1.c [111.51KB]
- stm32f10x_tim.c [97.36KB]
- stm32f10x_systick.c [6.93KB]
- stm32f10x_spi.c [24.83KB]
- stm32f10x_rtc.c [11.95KB]
- stm32f10x_rcc.c [42.09KB]
- stm32f10x_pwr.c [10.93KB]
- stm32f10x_nvic.c [28.01KB]
- stm32f10x_lib.c [6.62KB]
- stm32f10x_iwdg.c [6.26KB]
- stm32f10x_i2c.c [44.37KB]
- stm32f10x_gpio.c [20.77KB]
- stm32f10x_flash.c [31.63KB]
- stm32f10x_exti.c [8.39KB]
- stm32f10x_dma.c [22.80KB]
- stm32f10x_can.c [30.93KB]
- stm32f10x_bkp.c [10.91KB]
- stm32f10x_adc.c [53.80KB]
- inc
- stm32f10x_wwdg.h [2.54KB]
- stm32f10x_usart.h [11.43KB]
- stm32f10x_type.h [3.30KB]
- stm32f10x_tim1.h [33.85KB]
- stm32f10x_tim.h [28.33KB]
- stm32f10x_systick.h [3.09KB]
- stm32f10x_spi.h [9.07KB]
- stm32f10x_rtc.h [3.51KB]
- stm32f10x_rcc.h [13.39KB]
- stm32f10x_pwr.h [3.74KB]
- stm32f10x_nvic.h [15.87KB]
- stm32f10x_map.h [19.67KB]
- stm32f10x_lib.h [2.87KB]
- stm32f10x_iwdg.h [3.31KB]
- stm32f10x_i2c.h [15.17KB]
- stm32f10x_gpio.h [12.13KB]
- stm32f10x_flash.h [10.09KB]
- stm32f10x_exti.h [5.59KB]
- stm32f10x_dma.h [12.11KB]
- stm32f10x_can.h [11.89KB]
- stm32f10x_bkp.h [3.99KB]
- stm32f10x_adc.h [15.89KB]
- cortexm3_macro.h [2.12KB]
- 课程设计实验报告.doc [5.13MB]
我要下载:STM32数码管倒计时显示