Teensy 3.X 使用 UcgLib 的问题-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3255|回复: 3

Teensy 3.X 使用 UcgLib 的问题

[复制链接]
发表于 2019-4-19 08:48 | 显示全部楼层 |阅读模式
最近在Teensy 3.2 上使用ILI9341 的液晶屏,在编译的时候出现关于_NOP 的错误。经过搜索,在 https://github.com/olikraus/ucglib/issues/65 找到有人解决过这样的问题。原帖写的是:

Ucglib.cpp, line 786 - change the...defined(__arm__)... to ...defined(__NOT_arm__)...
Ucglib.cpp, line 833, add the following:

[mw_shl_code=arduino,true]#ifndef __NOP

#define __NOP __asm__ __volatile__("NOP");

#endif[/mw_shl_code]

有可能是因为版本的差别,我在Ucglib.cpp中修改如下:

Line783
[mw_shl_code=arduino,true]#if defined(__PIC32MX) || defined(__NOT_arm__) || defined(ESP8266) || defined(ARDUINO_ARCH_ESP8266) || defined(ESP_PLATFORM) || defined(ARDUINO_ARCH_ESP32)

Line 830:

#ifndef __NOP

#define __NOP __asm__ __volatile__("NOP");

#endif[/mw_shl_code]

之后即可正常工作。
代码中按照下面两种接线和定义都是能够工作正常的

Ucglib_ILI9341_18x240x320_SWSPI ucg(/*sclk=*/ 13, /*data=*/11, /*cd=*/ 9, /*cs=*/ 10, /*reset=*/ 8);
Ucglib_ILI9341_18x240x320_HWSPI ucg(/*cd=*/ 9, /*cs=*/ 10,/*reset=*/ 8);

推荐 HWSPI,速度快很多。

发表于 2019-4-29 18:05 | 显示全部楼层
你好,millis()函数的用法是啥呀,在中断里面可以用millis()记录时间点吗

点评

用法你可以直接看帮助文件或者函数库,然后中断里面不能用,用了出不来中断  发表于 2019-4-29 20:05
发表于 2019-4-30 08:43 | 显示全部楼层
haoyutian1 发表于 2019-4-29 18:05
你好,millis()函数的用法是啥呀,在中断里面可以用millis()记录时间点吗 ...

您好,我想记录两个外部中断之间的时间差,这个该怎么处理呀/
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 11:49 , Processed in 0.080209 second(s), 17 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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