完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
我正在学习中断部分,阅读XC8编译器用户指南。在5.5.1中,根据不同类型的设备,如图片,有多种方法来配置中断。例如,PIC18F420说,它是一个增强型闪存MCU,所以它是一个增强的基线设备W。是中断还是PIC18设备?
以上来自于百度翻译 以下为原文 Hi, there. I am learning the interrupt section, and reading the XC8 compiler user guide. In 5.9.1, there are several ways to configure interrupt according to different type of device, as picture. Take PIC18F4520 for example, the spec said it's a enhanced flash MCU, so is it a enhanced baseline device with interrupt or PIC18 device? Attached Image(s) |
|
相关推荐
19个回答
|
|
|
增强的基线是“新”的PIC16,通常有一个数字和Gt;1000.PIC18是…PIC18
以上来自于百度翻译 以下为原文 Enhanced baseline are the "new" PIC16, usually with a number >1000. PIC18 are... PIC18 |
|
|
|
|
|
还有一个问题我问:同步计数器和异步计数器是什么?根据PICMICROUM中系列MCU系列参考手册:什么是内部相位时钟?内部振荡器是什么?
以上来自于百度翻译 以下为原文 One more question I may ask : what is Synchronous Counter and Asynchronous Counter? According to PICmicro™ Mid-Range MCU Family Reference Manual: What is the internal phase clock? is the internal oscillator? |
|
|
|
|
|
CinziaG:谢谢,请问哪里可以找到这样的材料?
以上来自于百度翻译 以下为原文 To CinziaG: Thank you, may I ask where can I find such material? |
|
|
|
|
|
嗯,这些都是更“历史”的话题…一旦你使用微芯片部分已经将近2年了,但我相信Microchip页面上的全面描述确实说明了这一点。或者,可能是每个数据表的开始。
以上来自于百度翻译 以下为原文 Mmmm well, these are more "historical" topics... once you've been using Microchip parts for almost 2 decades But I believe that overall descriptions at Microchip page do describe that. Or, possibly the beginning of each datasheet. |
|
|
|
|
|
你的计时器是不是在数?我认为调试更容易,没有睡眠,可能没有IRQ,然后你可以添加他们稍后…
以上来自于百度翻译 以下为原文 Is your timer1 counting at all? I think it could be easier to debug without Sleep and possibly without IRQ, then you may add them later... |
|
|
|
|
|
不幸的是,我找不到至少在PIC18F420:(PS:什么是IRQ)的描述?
以上来自于百度翻译 以下为原文 To CinziaG: unfortunately, I can't find the description at least in the PIC18F4520 :( ps: What is IRQ? |
|
|
|
|
|
相信她的话。”中程“只适用于PIC12和PIC16芯片。”IrQ是“中断请求”的简称。她说,如果没有中断运行,调试更容易。
以上来自于百度翻译 以下为原文 Take her word for it. "Midrange" only applies to PIC12 and PIC16 chips. IRQ is short for "Interrupt Request". She's saying it would be easier to debug if you didn't have interrupts running. |
|
|
|
|
|
为了这个目的,你可以使用模拟器和秒表来检查计时器的运行速度。
以上来自于百度翻译 以下为原文 Yeah for this purpose, you can use the SIMulator and Stopwatch, to check how fast is the Timer running. |
|
|
|
|
|
QHB:我发现手册中的信息是如何区分高端和增强型的,因为它们是16位的长度。
以上来自于百度翻译 以下为原文 To qhb: I find the info in the manual as picture How to distinguish between the high-End and the Enhanced because they are the 16bits length. |
|
|
|
|
|
CinziaG:谢谢,我以前没有用过模拟器,它最近好像在学习。
以上来自于百度翻译 以下为原文 To CinziaG: Thank you, I didn't use the SIMulator before, it seems to learn it recently. |
|
|
|
|
|
高端和增强应该是相同的东西,它们不是16位CPU!是的,模拟器并不总是工作或有用的,但在这种情况下,它将是!(除了睡眠,可能)
以上来自于百度翻译 以下为原文 High end and Enhanced should be the same thing Yeah, SIMulator is not always working or useful, but in this case it will be! (apart from sleep, possibly) |
|
|
|
|
|
“高端”是指PIC18。“增强”是一个常用词,在许多应用中使用。增强闪存“只是意味着闪存被增强了,它与“增强的基线”或“增强的中值”无关。我可能是错误的,但是我认为一般来说:“基线”是12位核心“中程”,14位核心“高端”是16位核心。
以上来自于百度翻译 以下为原文 "High end" means PIC18. "Enhanced" is a common word, used in many applications. "Enhanced FLASH" just means the FLASH is enhanced, it has nothing to do with "enhanced baseline" or "enhanced midrange". I may be wrong, but I think in general: "baseline" are 12 bit core "midrange" are 14 bit core "high end" are 16 bit core |
|
|
|
|
|
CinziaG:请问SIM能在XIDE上运行吗?或者是免费的?
以上来自于百度翻译 以下为原文 To CinziaG: May I ask can SIM run on the X IDE? or is it free? |
|
|
|
|
|
它也存在于X中,就像8。它是IDE的一部分,所以是的,它是免费的,有时它有bug,这就是重点。小心点
以上来自于百度翻译 以下为原文 It exists into X as well, like in 8. It's part of the IDE so yes it's free Sometimes it has bugs, that's the point. Just be careful |
|
|
|
|
|
|
|
|
|
|
|
QHB:我知道如何找到这个设备的答案,谢谢!
以上来自于百度翻译 以下为原文 To qhb: I know how to find the answer of this device, thank you! |
|
|
|
|
|
嗨,No.。实际上,你的意思是:“基线”是12位指令“中程”,14位指令“高端”是16位指令。PIC10/12/16/18的核心本身总是8位。然后,您已经增强了基线和增强的中程,其中一些架构增强/变化,但仍然是S。ALE指令格式,即使这个手册是旧的,它仍然是一个“圣经”的PIC18核心体系结构:http://WW1.Microchip .com /…N/DeviceDoc /35500 A.PDF问候语。
以上来自于百度翻译 以下为原文 Hi, No... you actually meant : "baseline" are 12 bit instructions "midrange" are 14 bit instructions "high end" are 16 bit instructions The core itself for PIC10/12/16/18 is always 8 bits. And then you have enhanced baseline and enhanced midrange which have some architectural enhancements/changes but still the same instruction format Even though this manual is old, it is still a "bible" for PIC18 core architecture : http://ww1.microchip.com/...n/DeviceDoc/39500a.pdf Regards |
|
|
|
|
|
我在这个董事会的所有特定家庭论坛的原始名称。
以上来自于百度翻译 以下为原文 I was going off the original names of all the family specific forums on this board. i.e. |
|
|
|
|
|
嗨,我想问一下如何设置中断功能,我想在同一个帖子中讨论它是更合适的。根据规范,有三个方面设置中断:我使用PIC18F420与优先级模式(不兼容模式),显然我要选择第二个。有详细的步骤:1和2都在讨论遗留模式,所以我很着急。在3,我不知道它意味着什么,如何在SFRS中写入适当的比特,据我所知,只有两种方法来选择优先级(低中断和高中断说明符)4被忽略。有5.6的人在谈论GIT和PiX之类的东西。接下来,在5.5.1中:显然,关注1和4,在1,它说:我不知道第一步是什么意思?所以如果我想编写中断函数的原型,有什么我应该做的?第二步,我应该做什么?我是否正确地理解了规范?在下面的内容中:我想问一下,什么是“中断代码入口点”。我知道向量被放置在ISR的地址上,但是入口点似乎不是ISR的地址。在阅读这些内容之后,我想如果有不止一个高优先级中断,我应该做的是:我需要做的就是清除第一行中的标志(也用于编译器检查)。中断源),对吗?
以上来自于百度翻译 以下为原文 Hi, I'm gonna ask some doubts about how to set the interrupt function, I think discuss it in the same post is much more appropriate. According to spec, there are three category to set interrupt: I'm using the PIC18F4520 with the priority mode(not compatibility mode), apparently I'm gonna choose second way to do. There are the detailed procedure: The 1 and 2 are talking about the legacy mode, so I ignored it. In 3, I don't know what it means, how to write the appropriate bits in the SFRs, as far as I know, only two ways to choose priority(low interrupt and high interrupt specifier) 4 is ignored, I guessed 5.6 is talking about the GIE bit and PIEx or something. next, in the 5.9.1: Apparently, focus on 1 and 4, in 1 it says: I don't know what is the first step saying? so if I want to write the prototype of interrupt function, there is what I should do? void interrupt func(void) // first way void __interrupt() func(void) // second way In the second step, there is what I should do? void __interrupt(low_priority or high_priority) func(void) // first way void interrupt low_priority func(void) // second way Do I construe the spec correctly? in the following content: I may want to ask, what is the "interrupt code entry point". I know vector is placed with the address of ISR, but entry point seems not the address of ISR. After reading those content, I'm thinking if there are more than one high_priority interrupt, what I'm supposed to do is: void high_priority interrupt HighISR_1(void) { PIR1bits.TMR1IF = 0; TMR1H = 0xF0; // 65536-(32768/2) = 16384 TMR1L = 0x00; LATD++; } void high_priority interrupt HighISR_2(void) { PIR1bits.TMR2IF = 0; TMR2H = 0xC0; TMR2L = 0x00; LATD++; } All I need to do is just clear the flag in the first line(also for compiler to check interrupt source), correct? |
|
|
|
|
只有小组成员才能发言,加入小组>>
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
473 浏览 0 评论
5793 浏览 9 评论
2334 浏览 8 评论
2224 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3530 浏览 3 评论
1124浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
1097浏览 1评论
我是Microchip 的代理商,有PIC16F1829T-I/SS 技术问题可以咨询我,微信:A-chip-Ti
873浏览 1评论
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
475浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 07:20 , Processed in 1.124163 second(s), Total 113, Slave 95 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1158