查看: 3092|回复: 8

[求助] 关于KE系列UART例程问题

[复制链接]

该用户从未签到

24

主题

135

帖子

0

中级会员

Rank: 3Rank: 3

积分
329
最后登录
2020-6-18
发表于 2016-3-28 17:57:03 | 显示全部楼层 |阅读模式
UART_Interrupt_Demo例程,主函数里面有这么个函数UART_SetTxDoneCallback(UART0, UART_SendDone);
void UART_SetTxDoneCallback(UART_Type *pUART, UART_TxDoneCallbackType pfnCallback)
{
    uint8_t u8Port = ((uint32_t)pUART-(uint32_t)UART0)>>12;
    UART_TxDoneCallback[u8Port] = pfnCallback;
}

上面红色这句话是什么意思呢?为什么地址相减右移12位??

我知道答案 目前已有8人回答
回复

使用道具 举报

该用户从未签到

712

主题

6371

帖子

0

超级版主

Rank: 8Rank: 8

积分
24871
最后登录
2025-7-18
发表于 2016-3-29 09:57:24 | 显示全部楼层
是为了确认具体是哪个UART,通过这样一条uint8_t u8Port = ((uint32_t)pUART-(uint32_t)UART0)>>12;
如果是UART0,则u8Port是0,UART1的话,u8Port是1,而UART2,u8Port是2
回复 支持 反对

使用道具 举报

该用户从未签到

24

主题

135

帖子

0

中级会员

Rank: 3Rank: 3

积分
329
最后登录
2020-6-18
 楼主| 发表于 2016-4-5 21:19:31 | 显示全部楼层
小恩GG 发表于 2016-3-29 09:57
是为了确认具体是哪个UART,通过这样一条uint8_t u8Port = ((uint32_t)pUART-(uint32_t)UART0)>>12;
如果是U ...

好的,了解,谢谢啦
回复 支持 反对

使用道具 举报

该用户从未签到

712

主题

6371

帖子

0

超级版主

Rank: 8Rank: 8

积分
24871
最后登录
2025-7-18
发表于 2016-4-6 12:51:05 | 显示全部楼层
mical111 发表于 2016-4-5 21:19
好的,了解,谢谢啦

不客气,后续有问题,欢迎继续发帖交流!
回复 支持 反对

使用道具 举报

该用户从未签到

712

主题

6371

帖子

0

超级版主

Rank: 8Rank: 8

积分
24871
最后登录
2025-7-18
发表于 2016-4-6 12:51:07 | 显示全部楼层
mical111 发表于 2016-4-5 21:19
好的,了解,谢谢啦

不客气,后续有问题,欢迎继续发帖交流!
回复 支持 反对

使用道具 举报

该用户从未签到

24

主题

135

帖子

0

中级会员

Rank: 3Rank: 3

积分
329
最后登录
2020-6-18
 楼主| 发表于 2016-5-11 23:33:16 | 显示全部楼层
小恩GG 发表于 2016-4-6 12:51
不客气,后续有问题,欢迎继续发帖交流!

版主你好,有个问题请教下,KE系列是按照优先级来决定该引脚的功能,比如该引脚同时拥有ADC和GPIO功能,ADC优先级又由于GPIO,同时我把ADC模块时钟使能了,我又想使用GPIO,怎么整?
回复 支持 反对

使用道具 举报

该用户从未签到

712

主题

6371

帖子

0

超级版主

Rank: 8Rank: 8

积分
24871
最后登录
2025-7-18
发表于 2016-5-12 09:41:53 | 显示全部楼层
mical111 发表于 2016-5-11 23:33
版主你好,有个问题请教下,KE系列是按照优先级来决定该引脚的功能,比如该引脚同时拥有ADC和GPIO功能,A ...

我明白你的意思,但是不能同时共用同一个引脚
回复 支持 反对

使用道具 举报

该用户从未签到

24

主题

135

帖子

0

中级会员

Rank: 3Rank: 3

积分
329
最后登录
2020-6-18
 楼主| 发表于 2016-5-16 23:39:42 | 显示全部楼层
小恩GG 发表于 2016-5-12 09:41
我明白你的意思,但是不能同时共用同一个引脚

什么意思?我用其他引脚作为ADC功能,但是这个引脚虽然有ADC功能,我不用,我只用这个引脚的GPIO功能,怎么实现呢?
回复 支持 反对

使用道具 举报

该用户从未签到

712

主题

6371

帖子

0

超级版主

Rank: 8Rank: 8

积分
24871
最后登录
2025-7-18
发表于 2016-5-17 13:52:36 | 显示全部楼层
mical111 发表于 2016-5-16 23:39
什么意思?我用其他引脚作为ADC功能,但是这个引脚虽然有ADC功能,我不用,我只用这个引脚的GPIO功能,怎 ...

我的意思是这样的,因为引脚有复用功能,但是使用时只能任选一种
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-7-19 14:59 , Processed in 0.103746 second(s), 29 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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