数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 751|回复: 5

[ARM] CC2640R2墨水屏编程指南--环境配置

[复制链接]
发表于 2025-2-18 19:54:35 | 显示全部楼层 |阅读模式

爱科技、爱创意、爱折腾、爱极致,我们都是技术控

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
1、前往www.ti.com下载需要的软件
       IDE:CCS(Code Composer Studio)
       SDK:SIMPLELINK-CC2640R2-SDK,SDK下载需要注册账号,账号地址建议填其他国家。
       新版的CCS需要手动安装ti-cgt-arm和xdctools,启动CCS后,打开File->Preferences->Code Composer Studio settings界面,在Compilers里面添加ti-cgt-arm目录,Products里面添加xdctools目录,添加后要等进度条走完。
       注意TI的所有软件路径不能含空格。

2、准备刷机工具
       便宜的工具建议选JLINK V9,这个只支持jtag,官方的从XDS100V3就开始支持cjtag了,如果使用jlink就下载对应的刷机软件。

3、配置主板文件
      开发最麻烦的一步就是准备主板文件,为了降低复杂度,建议备份官方SDK主板文件后,直接改原始的SDK文件。
     我手上的墨水屏主要Pin配置如下
      CC2640R2_LAUNCHXL.h
  1. /* LEDs */
  2. #define CC2640R2_EPAPER_PIN_LED_ON            0
  3. #define CC2640R2_EPAPER_PIN_LED_OFF           1
  4. #define CC2640R2_EPAPER_PIN_RLED              IOID_3
  5. #define CC2640R2_EPAPER_PIN_GLED              IOID_4

  6. /* SPI Board */
  7. #define CC2640R2_EPAPER_SPI0_MISO             PIN_UNASSIGNED
  8. #define CC2640R2_EPAPER_SPI0_MOSI             IOID_5
  9. #define CC2640R2_EPAPER_SPI0_CLK              IOID_6
  10. #define CC2640R2_EPAPER_SPI0_CS               IOID_7
  11. #define CC2640R2_EPAPER_SPI0_DC               IOID_8
  12. #define CC2640R2_EPAPER_SPI0_REST             IOID_9
  13. #define CC2640R2_EPAPER_SPI0_BUSY             IOID_10
  14. #define CC2640R2_EPAPER_SPI0_CSN              PIN_UNASSIGNED
复制代码

CC2640R2_LAUNCHXL.c
  1. GPIO_PinConfig gpioPinConfigs[] = {

  2.     CC2640R2_EPAPER_PIN_RLED | GPIO_DO_NOT_CONFIG,
  3.     CC2640R2_EPAPER_PIN_GLED | GPIO_DO_NOT_CONFIG,

  4.     CC2640R2_EPAPER_SPI0_MISO | GPIO_DO_NOT_CONFIG,
  5.     CC2640R2_EPAPER_SPI0_MOSI | GPIO_DO_NOT_CONFIG,
  6.     CC2640R2_EPAPER_SPI0_CLK  | GPIO_DO_NOT_CONFIG,
  7.     CC2640R2_EPAPER_SPI0_CS   | GPIO_DO_NOT_CONFIG,
  8.     CC2640R2_EPAPER_SPI0_DC   | GPIO_DO_NOT_CONFIG,
  9.     CC2640R2_EPAPER_SPI0_REST | GPIO_DO_NOT_CONFIG,
  10.     CC2640R2_EPAPER_SPI0_BUSY | GPIO_DO_NOT_CONFIG,
  11. };

  12. const PIN_Config BoardGpioInitTable[] = {

  13.     CC2640R2_EPAPER_PIN_RLED | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MAX,       /* LED initially off */
  14.     CC2640R2_EPAPER_PIN_GLED | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MAX,       /* LED initially off */
  15.     CC2640R2_EPAPER_SPI0_MOSI| PIN_GPIO_OUTPUT_EN | PIN_PUSHPULL,                                            /* SPI master out - slave in */
  16.     CC2640R2_EPAPER_SPI0_CLK | PIN_GPIO_OUTPUT_EN | PIN_PUSHPULL,                                             /* SPI clock */
  17.     CC2640R2_EPAPER_SPI0_CS  | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
  18.     CC2640R2_EPAPER_SPI0_DC  | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
  19.     CC2640R2_EPAPER_SPI0_REST| PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL,
  20.     CC2640R2_EPAPER_SPI0_BUSY| PIN_INPUT_EN | PIN_PULLDOWN,
  21.     PIN_TERMINATE
  22. };
复制代码

因为此款板子没有flash卡,所以要去掉
CC2640R2_LAUNCHXL_shutDownExtFlash();
修改完成后就可以编译examples\rtos\CC2640R2_LAUNCHXL\ble5stack\simple_peripheral
来测试主板文件是否修改正确了,如果看不到蓝牙名称,可以通过在Code Composer Studio中调试暂停来看停在什么地方。
需要注意的是,因为jtag和spi占用同一个pin,如果开始使用spi工作后就没法用jlink调试了。




打赏

参与人数 1家元 +30 收起 理由
慕名而来 + 30 原創內容

查看全部打赏

 楼主| 发表于 2025-2-18 19:56:30 | 显示全部楼层
主板文件位于source\ti\boards\CC2640R2_LAUNCHXL目录
占楼备用
回复 支持 反对

使用道具 举报

发表于 2025-2-19 09:44:00 | 显示全部楼层
楼主的研究精神可嘉,手动赞一个!
回复 支持 反对

使用道具 举报

发表于 2025-2-20 09:37:15 | 显示全部楼层
楼主准备玩哪款墨水屏?
回复 支持 反对

使用道具 举报

发表于 2025-2-26 12:44:25 | 显示全部楼层
我之前用过ti的cc2541、cc2530的器件,那时候用的还是IAR的集成环境。怎么到了cc26系列的又换天了?
回复 支持 反对

使用道具 举报

发表于 2025-3-1 05:38:41 来自手机浏览器 | 显示全部楼层
TI这个果然不好搞,新手一点都不友好,光是环境就吓退好多不过有时间还是学习一下,毕竟都花了十多块买了好几个墨水屏了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-6-20 11:17 , Processed in 0.140400 second(s), 10 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表