我发现TI的实时控制器有点特别!!!

新闻资讯   2023-06-07 12:05   89   0  

摘要:最近搞到一块德州仪器(TI)的片子,型号是TM4C1294x。关于这款芯片,网上资料挺少的,基本没人用过。正好最近在用,所以就跟大家说一说这个芯片如何使用吧!

TM4C1294KCPDT是TI推出的一款基于ARM Cortex-M4内核的微控制器,属于TM4C129x系列产品。它具有丰富的外设资源和高性能、低功耗的特点,可广泛应用于工业自动化、物联网、智能家居、汽车电子、医疗设备等领域。

该芯片主要技术参数如下:

  • 内核:ARM Cortex-M4,主频120MHz。
  • 存储器:1MB Flash存储器,256KB SRAM,64KB EEPROM。
  • 外设模块:6个UART、6个SPI、6个I2C、2个CAN、USB OTG等多达90个外设模块。
  • 通信接口:10/100 Ethernet MAC和PHY、USB、SD/MMC、QSPI等。
  • 定时器和计数器:16个PWM输出通道、8个32位定时器、10个16位定时器、12个32位计数器、2个12位DAC等。
  • ADC:12路12位ADC,最大采样速率为2Msps。
  • 安全和保护机制:硬件加密引擎、含错误检测和纠正的存储器、电源管理等。

除此之外,TM4C1294KCPDT还支持多种调试和开发工具,包括Keil、IAR、Code Composer Studio等,并提供了丰富的中断控制、时钟管理和电源管理等API接口,可帮助开发人员快速搭建和调试系统。此外,TM4C1294KCPDT还支持多种通信协议和标准,如TCP/IP、Ethernet/IP、Modbus、CANopen等,可方便地与其他设备进行通信和互联。

前言

由于TM4C129x是Cortex-M4内核,支持使用Keil MDK开发,这里我就使用我比较熟悉的Keil来开发。首先安装芯片开发包,我现在的keil版本是5.29。打开keil,点击Pack Installer

打开Pack Installer之后在左边栏找到Texas Instruments -> Tiva C Series,点击后右边栏就会出现这个系列的芯片包(TM4C_DFP),然后点击install进行安装,安装时等待右下角的进度条跑满即可。

打开keil,Project->new uVision Project->选择工程文件存放路径(工程结构根据自己喜好来即可)->选择芯片型号TM4C1294KCPDT->在Manage Run-Time Environment中选择需要添加的文件,我选择了CMSIS->CORE和Device->Startup,就是内核文件和启动文件,如下图所示。点击ok后工程就建立完成了。

一、下载芯片SDK

上面已经知道如何新建一个工程,但是在开发中我们一般直接用官方的例程或者修改就可以了。去TI的官方搜索这个芯片就可以下载到许多相关的资源和手册,网址如下https://www.ti.com.cn/tool/cn/SW-TM4C

点击下载选型,进入如下界面,这里选择下载SW-EK-TM4C1294XL-2.2.0.295.exe

下载的时需要登录TI的账户,登录之后按照提示就可以下载了。

下载之后将其安装即可,默认安装在C盘中。

对应的例程都在文件夹C:\ti\TivaWare_C_Series-2.2.0.295\examples\boards\ek-tm4c1294xl中。

二、以太网lwip

2.1 硬件

TM4C1294KCPDT作为一款网络应用处理器,具备内置Ethernet MAC和PHY功能。其中MAC层是负责数据帧的封装和解封装,而PHY层则是将数据从物理介质上发送出去并接收到物理介质上传输的数据。

由于PHY层需要实现模拟电路设计,因此常常被单独设计成一个芯片。但是,在TM4C1294KCPDT中,PHY层已经被整合进入内部,既可以简化系统设计,又可以提高通信效率。

TM4C1294KCPDT的Ethernet MAC和PHY支持10/100M自适应速率,符合IEEE 802.3标准。同时,它还支持半/全双工模式、流控制和自动MDI/MDIX等特性,可方便地与其他设备进行通信和互联。

芯片外接一个网络变压器和RJ45头子就可以进行以太网通信了。

这里注意了,由于使用以太网通信,控制器外接的晶振建议为25MHz,使用这个25MHz不仅可以作为系统的时钟源也可以作为以太网通信的时钟。

2.2 软件

TI的官网上

详细的介绍了TM4C129KCPDT芯片的以太网相关文档和例程以及例程使用说明。

三、tcpecho_server测试

打开对应的例程

板子和PC端通过网线连接,其中板子作为服务端server

#define SERVER_IPADDR "100.10.168.192"
#define SERVER_NETMASK "0.255.255.255"
#define SERVER_GWMASK "1.10.168.192"
#define SERVER_PORT 8080

PC作为客户端client,在接通网线后,使PC和板子处于同一网段。

IP地址:192.168.10.200
子网掩码:255.255.255.0
默认网关:192.168.10.1

之后使用网络调试助手测试

大功告成!!!

END

来源:果果小师弟

版权归原作者所有,如有侵权,请联系删除。

推荐阅读
CAN总线比UART串口难吗?
分享一个开源串口神器,太强了!
短短三个月,稚晖君创业项目已获三轮融资

→点关注,不迷路←

文章引用微信公众号"嵌入式微处理器",如有侵权,请联系管理员删除!

博客评论
还没有人评论,赶紧抢个沙发~
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。