完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
你好,
我正在使用STM8L151使用IAR工作台而没有ST固件库,我正在尝试使用SPI中断。不幸的是它不起作用。 SPI已经运行,接收标志已设置,但我没有得到中断: 这是配置: SYSCFG_RMPCR1 = 0×00; // MIS0-> PB7,MOSI-> PB6,SCK-> PB5,NSS-> PB4 CLK_PCKENR1 = 0x10的; //启用SPI时钟 SPI1_CR1 =的0x30; //启用SPI,Baurate SPI1_CR1_CPOL = 0; SPI1_CR1_CPHA = 1; SPI1_CR1_LSBFIRST = 0; SPI1_CR2_SSM = 1; SPI1_CR2_SSI = 1; SPI1_CR1_MSTR = 1; SPI1_CR1_SPE = 1; SPI1_ICR_RXIE = 1;启用SPI中断 和中断向量: & sharppragma vector = SPI_RXNE_vector __interrupt __root void SPI(void) { int a = 0; } 我是否必须在全球范围内启用任何类型的中断? #spi #stm8l #interrupts 以上来自于谷歌翻译 以下为原文 Hello, I'm using the STM8L151 using IAR workbench without ST Firmware Library and I'm trying to use an SPI Interrupt. Unfortunatey it doesn't work. SPI is already running, the receiving flag is set, but i don't get an Interrupt: This is the configuration: SYSCFG_RMPCR1=0x00; //MIS0->PB7, MOSI->PB6, SCK->PB5, NSS->PB4 CLK_PCKENR1=0x10; //enable SPI clock SPI1_CR1=0x30; //enable SPI, Baurate SPI1_CR1_CPOL=0; SPI1_CR1_CPHA=1; SPI1_CR1_LSBFIRST=0; SPI1_CR2_SSM=1; SPI1_CR2_SSI=1; SPI1_CR1_MSTR=1; SPI1_CR1_SPE=1; SPI1_ICR_RXIE=1; Enable SPI Interrupt And the Interrupt vector: &sharppragma vector=SPI_RXNE_vector __interrupt __root void SPI(void) { int a=0; } Do i have to enable the Interrupts globally in any Kind? #spi #stm8l #interrupts |
|
相关推荐
1个回答
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2632 浏览 1 评论
3208 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1783 浏览 1 评论
3607 浏览 6 评论
5987 浏览 21 评论
939浏览 4评论
1315浏览 4评论
在Linux上安装Atollic TRUEStudio的步骤有哪些呢?
582浏览 3评论
使用DMA激活某些外设会以导致外设无法工作的方式生成代码是怎么回事
1302浏览 3评论
1357浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 06:10 , Processed in 0.968445 second(s), Total 49, Slave 42 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号