【经验】8位单片机EFM8系列中通过官方配置工具快速进行寄存器的初始化配置并进行SPI调试的步骤说明
SILICON LABS 创新型8位MCU EFM8系列提供完全集成的体验,非常适合物联网应用,提供了业界最快的速度和最低的功耗,使用增强型8051内核,集成UART、SPI、SMBUS、ADC等丰富外设。 Silicon Labs官方提供了集成的开发环境,并且在其中提供了可视化的置工具,可以使工程师更快地配置寄存器。
在嵌入式开发的过程中我们经常要使用到SPI通信,SPI通信经常用于芯片之间的数据交流,例如一些芯片功能的配置与诊断、Nor Flash操作等都需要用到SPI通信。本文主要介绍通过Simplicity Studio配置工具快速进行寄存器的初始化配置并进行SPI调试的方法,方便刚刚接触到EFM8 MCU的用户快速上手。
新建一个工程,在XXX.hwconf窗口中的DefaultMode Peripherals选项卡中勾选SPI0、Interrupts、Watchdog Timer。如下图:
在SPI0的Properties窗口的SPI 0选项卡中做如下配置:使能SPI Enabl、Bus Mode选择Single-master 4-wire mode, NSS high模式、SPI Mode选择Maseter、SPI Clock Frequency这里直接使用的默认值。如下图。
在Interrupt的Properties窗口中使能总中断与SPI中断,如下图。
在Watchdog Timer的Properties窗口中关闭看门狗,因为我们这里只是调试SPI的通信,所以禁用看门狗。如下图。
在Port I/O Mapping窗口中,选择SPI0,如下图。
在Port I/O的Properties窗口中使能Crossbar功能。如下图。
单击XXX.hwconf窗口中DefaultMode Port I/O选项卡中的P0.0、P0.2、P0.3,在对应的Properties窗口中将这三个引脚的IOMode设置为Digital Push-Pull Output。如下图。
在main函数寄存器初始化完成之后添加如下代码。
在中断中添加如下代码。
将P0.0、P0.1、P0.2、P0.3接上逻辑分析仪,可以看到正确发送了0x11、0x22两个数据。
Tips:
1、 发送数据前拉低片选线SPI0_NSS,数据接收完成后拉高片选线SPI0_NSS。
2、 通过判断SPI0CFG寄存器中SPI Busy位SPIBSY判断当前是否正在有数据传输。
3、 向 SPI0DAT中写入数据启动SPI发送。
4、 在中断中通过判断SPIF(SPI0 Interrupt Flag)判断是否完成一个数据发送。通过判断接收缓冲器是否为空判断是否有数据需要读取。
5、 通过读取SPI0DAT得到接收的数据值。
6、 SPIF中断标志位必须手动清除。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由黄昏提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
【经验】8位MCU EFM8系列编程接口与U-EC6的连接方法
Silicon Labs 的EFM8系列的MCU是最新一代的8位MCU,芯片支持在线调试功能,采用的调试接口继承了C8051F系列的C2调试接口,这是一个两线制的调试接口,调试时只需要C2CK时钟信号与C2D数据信号就可以。本文介绍U-EC6的信号定义及Silicon Labs 8位MCU EFM8的编程接口与U-EC6的连接方法。
设计经验 发布时间 : 2019-10-31
【经验】Silicon Labs 8位MCU 烧录程序异常的解决方法
本文介绍Silicon Labs的8位MCU C8051F/EFM8系列的芯片在量产烧录过程中遇到问题的解决方法。
设计经验 发布时间 : 2019-01-27
【经验】8位MCU EFM8BB21的SPI通信Master模式发送FIFO的配置与调试方法介绍
在嵌入式开发的过程中我们经常要使用到SPI通信,有时候会有大量的数据需要通过SPI发送出去,如果使用EFM8的SPIF产生中断,在中断中发送数据,那么每发送一个数据就会产生一个中断,大大增加了单片机的开销。EFM8BB21的SPI0提供了4byte的发送FIFO缓冲区,通过合理配置使用发送FIFO可以大大减少中断触发次数,提高程序运行效率。本文主要介绍如何配置调试SPI0的发送FIFO模式。
设计经验 发布时间 : 2019-10-09
BB5x 8位MCU用于嵌入式的三大优势——小尺寸、经济高效、设计简化
芯科科技的8位MCU产品组合,在芯科科技提供Simplicity Studio软件开发平台上同步支持8位和32位产品,还可支持EFR32系列无线SoC。这种单一平台解决方案有助于消除设计过程中不必要的复杂性,使设计人员能够将时间和精力集中在产品研发方面,而不是适应新的开发环境,从而缩短了开发周期并加快了上市时间。
应用方案 发布时间 : 2023-12-27
【经验】8位MCU EFM8中插入NOP空指令的三种方法:RC-51编译器、SDCC编译器、Keil C51编译器
EFM8系列是Silicon Labs公司的8位MCU,由于其高性价比被广泛的应用于各种行业。并且EFM8系列资源丰富,能满足不同场景需求。对于单片机开发通常需要延时,对于简单的延时NOP空指令不失为一种最优的办法。
设计经验 发布时间 : 2019-10-10
【经验】芯科的8位MCU EFM8BB51替换EFM8BB21使用参考电压的注意事项
EFM8BB51的参考电压设计和EFM8BB21有较大差异,直接使用EFM8BB21的硬件电路,可能造成ADC采用出现问题。本文介绍EFM8BB51的参考电压设计的注意事项。
设计经验 发布时间 : 2023-04-14
【经验】如何解决8位MCU在烧录过程中烧录器或者调适配器与C2调试接口连接不上的问题
本文介绍如何解决生产时出现烧录器(或者调适配器) 与目标板连接不上的问题。以Silicon Labs 8位MCU为例,主要说明讨论了每个用户功能的C2复用由于隔离配置问题导致目标设备连接不上。
设计经验 发布时间 : 2020-07-02
【经验】一文教你如何快速搭建8位MCU EFM8开发环境
Silicon Labs(芯科科技)在本文讲述如何快速搭建8位MCU EFM8开发环境,帮助行业人士深入掌握EFM8 8位MCU的开发及应用技巧。
设计经验 发布时间 : 2019-01-27
【产品】Silicon Labs全新8位MCU EFM8BB5系列,具有高效8051内核,最大工作频率达50MHz
Silicon Labs的创新型8位MCU EFM8BB5系列引入了世界上最灵活、最准确和最强大的通用8位MCU,可实现不可预见的创新和效率。借助BB5,您可以将任何引脚映射到任何外围设备,简化工程并最小化 MCU 封装大小和成本。
新产品 发布时间 : 2021-10-22
Silicon Labs EFM8系列8位MCU的IO Crossbar硬件分配
EFM8系列是Silicon Labs公司的8位MCU,总共分为4个系列:通用型EFM8BB系列、低功耗EFM8SB系列、带USB的EFM8UB系列和高性能的EFM8LB系列。EFM8系列MCU的IO具有Crossbar功能,即软件上可以分配IO的外设,为硬件设计提供了灵活性。但是Crossbar功能分配外设时并不是引脚随意分配,而是具有优先级要求的。
设计经验 发布时间 : 2018-06-27
【经验】8位MCU EFM8系列内部BOOTLOADER的空间分配
本文介绍Silicon Labs的8位MCUEFM8系列内部BOOTLOADER占用FLASH空间的情况,及程序中对FLASH空间地址的分配。
设计经验 发布时间 : 2021-08-17
【应用】8位MCU EFM8BB21用于筋膜枪,最高支持49MHz,无需外置晶振
筋膜枪是一种软组织康复工具,推荐采用Silicon labs 8位MCU EFM8BB21为主控,该MCU支持工业级工作温度范围-40至+125℃,工作电压最高支持5.25V。
应用方案 发布时间 : 2021-06-27
【经验】8位MCU EFM8LB1 FLASH擦写操作步骤
EFM8LB1系列是silabs专门针对光模块以及消费市场推出的高度集成的3x3mm小封装8位MCU,内部自带温度传感器,+/-3℃温度范围,可选0-4路DAC,UART或者SMBUS bootloader,以及其他通用接口。本文主要介绍EFM8LB1系列Flash的擦写方式以及步骤。
设计经验 发布时间 : 2019-01-31
【经验】在Simplicity Studio中8位MCU EFM8用C编程时嵌入汇编代码的方法
目前MCU领域主流的编程语言仍是C语言,但是在某些关键的地方仍需要使用少部分汇编代码来实现,比如精确的延时,在不使用定时器的情况下C代码很难控制精确,这时嵌入汇编就有很大优势。下面就是以Silicon Labs 8位MCU EFM8BB10为例的一个操作例子。
设计经验 发布时间 : 2019-09-21
【经验】8位MCU EFM8BB3如何工作在49MHz模式?
Silicon Labs的EFM8BB3是一款小封装、多用途8位MCU,最高运行频率可达49MHz, RAM容量最大为4352B,FLASH容量最大可达64KB。EFM8BB3默认是采用内部24.5MHz的时钟,那么如何切换到内部49MHz的时钟呢?
设计经验 发布时间 : 2020-11-10
电子商城
现货市场
品牌:SILICON LABS
品类:Switch Hall Effect Magnetic Position Sensor
价格:¥2.2924
现货:126,000
服务
可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。
最小起订量: 1000 提交需求>
可烧录IC封装SOP/MSOP/SSOP/TSOP/TSSOP/PLCC/QFP/QFN/MLP/MLF/BGA/CSP/SOT/DFN;IC包装Tray/Tube/Tape;IC厂商不限,交期1-3天。支持IC测试(FT/SLT),管装、托盘装、卷带装包装转换,IC打印标记加工。
最小起订量: 1pcs 提交需求>
登录 | 立即注册
提交评论