Questions tagged «pic»

PIC是Microchip生产的8位,16位和32位RISC微控制器品牌。“ PIC”最初是“ Peripheral Interface Controller”的缩写。

4
更改寄存器值时,能否将微控制器不同端口的各个引脚映射到寄存器并更改其值?
问:能否将微控制器不同端口的各个引脚映射到寄存器,并在更改寄存器值时更改其值? 场景:我已经用完了微控制器每个端口(8位)的一些引脚。现在,我想连接一个需要8位总线的设备(假设D0至D7 IN SEQUENCE),也就是说我需要来自控制器的8个引脚,以便可以一对一的方式连接它们 portx0 -> D0 // x is the name of port followed by bit location on that port portx1 -> D1 ... portx7 -> D7 但是我没有可以与该设备连接的8个引脚的整个端口,而是从portx,Porty和Portz提供了一些引脚。新的连接方案为(分别从微控制器到设备的连接) portx0 -> D0 portx1 -> D1 portx2 -> D2 porty4 -> D3 porty5 -> D4 porty6 -> D5 porty7 -> D6 …

10
在爱好者友好型微控制器中从RAM执行指令
我的一个项目将从能够运行不存储在微控制器中(而是存储在SD卡中)的程序中受益匪浅。 因此,我正在寻找一种设备,该设备将允许我将SD卡中的代码加载到RAM中,然后从RAM中执行代码。目前,我只有PicKit2附带的程序员,所以我宁愿选择使用PIC。 有谁知道哪个PIC可以做到这一点?如果没有PIC能够做到这一点,那么有哪些不同的微控制器可用于此工作?最好以面包板兼容包装提供。

5
FPGA是否适合此类项目?
我目前正在开发Super OSD(一个屏幕显示项目)。http://code.google.com/p/super-osd包含所有详细信息。 目前,我正在使用dsPIC MCU来完成这项工作。这是一个非常强大的DSP(40 MIPS @ 80 MHz,三个寄存器的单周期操作和一个MAC单元),而且重要的是,它采用DIP封装(因为我正在使用面包板对其进行原型制作。)实际上,要在OSD上充分发挥性能的作用-芯片在输出级上每个像素大约有200ns或10个周期,因此该部分的代码必须进行非常优化(因此,它始终会被写入部件。) 现在,我正在考虑为此使用FPGA,因为由于这种芯片的并行架构,可能有一个运行OSD的简单逻辑程序。绘图线和算法代码之类的事情将由MCU处理,但实际输出将由FPGA完成。还有一些简单的事情,例如设置像素或绘制水平和垂直线,我想集成到FPGA上以提高速度。 我有一些问题: 它会花费更多吗?我发现最便宜的FPGA的价格约为5英镑,而dsPIC的价格则为3英镑。所以它会花费更多,但是要多少呢? dsPIC装在SO28封装中。我不想超过SO28或TQFP44。我见过的大多数FPGA都采用BGA或TQFP> 100封装,由于剪力大小以及我自己焊接的困难,目前暂时无法选择。 FPGA使用多少电流?dsPIC解决方案当前消耗约55mA +/- 10mA电流,目前还可以。FPGA会消耗更多还是更少?它是可变的还是像dsPIC一样是静态的? 我至少需要12KB的图形内存来存储OSD图形。FPGA的芯片上有这种存储器吗?还是只有外部芯片才有?

3
PIC芯片中是否有内置序列号?
我有几十个PIC16芯片。我想从芯片中检索某种唯一的序列号以用于识别。我知道可以手动完成。但这很乏味。 问题: PIC是否有内置序列号? 如果答案为“否”,那么从Microchip订购芯片时,是否有一种简便的方法可以将具有唯一序列号的代码上传到每个芯片?
12 pic  microchip 

5
设计使用寿命更长的电路
我已经学习了一段时间的图片微控制器,并且对处理数字电子学有相当多的了解。我从事过基本的电子项目,现在需要从事一些商业应用。 我的问题是关于如何设计和构建可靠而持久的电路。我建立了一个自动光控制器电路,该电路从LDR接收输入,并在七段式面板上显示模拟读数的值。然后,它进行一些计算并通过继电器控制光。该电路需要永久性接通(每天24小时)。最初几个月,电路工作正常,但是大约六个月后,它开始出现故障。它在7段显示器上显示了毫无意义的东西(它只显示了数字的一部分),然后点亮了指示灯LED上的灯泡,但没有接通继电器,这不是预期的行为。问题是它不会总是那样工作。有时它完美地工作。然后它再次开始出现故障。没有确切的工作顺序。 现在我的问题是为什么这些电路会以这种方式工作。我认为这可能是因为它无间断地全天候工作。这种应用程序需要全天候工作。我使用PIC是因为我只了解pic。atmal比pic更可靠吗?(我问,因为atmal在大多数自动化应用中使用的频率比图片使用的频率更高)我需要数字电子专家的一些建议。这种工业应用如何构建?有什么特别的规则要遵循吗?如何设计更可靠的电路?专家的任何建议或指导将不胜感激。谢谢... 编辑 正如答案中所建议的那样,我将通过提供其他资源来帮助找出设计中的错误来编辑答案。 下图描述了构建电路后的外观。这是一个12V中心抽头变压器,可为电路供电,使用半波整流器进行整流,然后使用7805 IC进行调节。 下面是原理图设计。 如果需要任何其他信息,我将提供所需的一切。如果需要该程序,我将其添加。该程序有点长,它使用中断。

3
该电路如何将20V信号与3v3微控制器接口
我设计了以下电路,以将12-20V信号连接到运行3.3伏特的微控制器。信号为20V或开路。 我希望电路尽可能具有弹性。它应该能够处理EMI和ESD。 R1用于限制电流并使晶体管偏置。 C1用于实现低通滤波器。 R2用于下拉晶体管基极并使电容器C1放电,20V输入为20V或开路。 D1用于保护晶体管不受基极负电压的影响。 R3上拉微控制器引脚。 欢迎对此电路进行任何评论和改进。 附带的问题:该晶体管可以承受的最大正电压是多少。数据表中规定峰值基极电流为100mA。如果基极保持在0.7伏,则输入可以高达1000伏(10k欧姆* 100mA)。但是,如果输入为1000伏,则分压器会将电压设为500伏。根据数据表,最大Vcb为60V。

1
dsPIC33和PIC32
我最初以为PIC32的优点是能够处理更复杂的RTOS,例如基于Linux的RTOS。不幸的是,它缺少内存管理单元(MMU)和足够的内存。 因此,现在我想了解您何时会选择基于dsPIC33的PIC32?,除了您需要32位处理器时 dsPIC似乎更有希望。它具有DSP引擎,并且具有的PWM数量是pic32的两倍(最多14个),并且可以配备正交编码器。 两种架构都可以配备DMA,DAC,数字通信(I2C,SPI,UART)以及实时时钟和日历
11 pic  microchip 


2
引脚顺序对这个RAM根本没有影响吗?
我正在尝试将pic32芯片路由到128kB SRAM芯片,很难将所有17条地址线和所有8条数据线连接起来。我试图将前16个地址引脚绑定到portB引脚0-15,将数据引脚绑定到portD 0-7。考虑了一段时间后,我意识到尝试将rb0与a0对齐,将rb1与a1等对齐可能使我的生活更加困难。我真正想做的就是向portB写一个16位值并已加载并准备好大部分地址。如果我根据布线的难易程度进行引脚分配,则MCU和RAM之间的逻辑地址会有所不同,但至少应保持一致。由于没有其他东西需要与RAM进行通信,因此,如果MCU请求地址0x101且RAM给它提供地址0x110,我认为这不会有问题。 但是,我想知道这是否是个好主意。如果RAM内部有某种结构可以使顺序读取更有效,或者类似的方法,那么我可能要麻烦将它们按1:1路由。这两个芯片上的引脚排列对我来说是随机的,因此如果我忽略特定的数字,这对我来说将变得容易得多。是否有充分的理由我应该或不应该这样做?
11 pic  routing  sram 

6
我的PIC16多任务RTOS内核不工作的原因是什么?
我正在尝试为PIC x16微控制器创建一个半抢占式(协作式)RTOS。在我之前的问题中,我了解到在这些内核中无法访问硬件堆栈指针。我在PIClist中查看了此页面,这就是我正在尝试使用C实现的页面。 我的编译器是Microchip XC8,当前正在使用在配置位中选择了4MHz内部RC振荡器的PIC16F616。 我了解到,可以通过查看编译器的头文件来使用C访问PCLATH和PCL寄存器。因此,我尝试实现一个简单的任务切换器。 如果我在重新启动,重置并在光标不在第一行(TRISA=0;)而不是另一行(例如ANSEL=0;)上时将调试器设置为光标后暂停调试器,则它可以在调试器中正常工作。在调试器的第一次启动中,我在以下位置获得这些消息Debugger Console: Launching Programming target User program running No source code lines were found at current PC 0x204 编辑:我不知道是什么使它起作用,但是调试器现在可以完美地工作了。因此,省略上面的输出和段落。 编辑:更改这样的主要定义使下面的代码工作。这将在程序地址处启动主要功能0x0099。我不知道是什么原因造成的。这不是一个真正的解决方案。我现在猜测存在编译器特定的错误。 void main(void) @ 0x0099 { 这是我的C代码: /* * File: main.c * Author: abdullah * * Created on 10 Haziran 2012 Pazar, 14:43 */ #include <xc.h> …

6
PIC不断重置:我是否看到面包板使用带来的副作用?
我正在使用PIC18F4680,在以HSPLL模式在40 MHz外部时钟源或10 MHz晶振上运行时遇到问题。在HS模式下使用10 MHz晶振似乎还可以,在HSPLL模式下使用5 MHz晶振也可以。 发生的情况是,PIC启动,工作了几秒钟,然后关闭了一段时间,然后再次启动。该周期的总时间约为5秒,其中PIC会在第二秒的早期停止工作。 我还注意到,有时当我在面包板的电源总线上添加足够大的放电电容器时,PIC会正常工作。有趣的是,只有在PIC已经运行的情况下添加电容器时,才会发生这种情况。如果我在那里用面包板为面包板供电,或者我将电容器没有完全放电,问题仍然存在。 我在一些站点上读到,由于PIC在更高频率和最低最低工作电压下的功耗增加,可能会发生与我类似的问题。在这些情况下,如果电源上存在一些短电压降,则它们很可能在该频率上达到PIC的最低工作电压,因此,最好在面包板上增加电容器以解决该问题。由于在40 MHz的满负载下,整个电路使用大约64 mA的电流,所以我的第一个想法是放置大约钽电容器,希望它们足够大并且具有足够低的ESR以解决问题。 。一个没有帮助,第二个也没有帮助。因此,我添加了一个铝质电容器,但这也没有帮助。100 μ ˚F10 μ ˚F 10 μF10 \mbox{ } \mu F 100 μ ˚F 100 μF100 \mbox{ } \mu F470 μ ˚F 470 μF 470 \mbox{ } \mu F铝电容器无效。最后,我添加了一个1 mF的铝电解电容器,然后第一次电路工作正常,直到关闭并打开电源。我还应注意,出于测试目的,我使用5.5 V的Vcc,这是该微控制器的最高额定电压。这应该给我留出一些空间,直到4.2 V(40 MHz的最低工作电压)为止。 接下来,我读到有时浮空的输出可能会引起毛刺,因此我在所有未使用的引脚上放置了下拉电阻,但这两个都没有帮助。之后,我已经读到,有时如果振荡器输入悬空,则可能会出现问题,因此我尝试使用大约电阻将它们连接至GND ,但这没有帮助。10 中号Ω10 k 欧姆 10 kΩ10 …

1
PIC18F4550 C编译器是开放源代码和跨平台的吗?
我是AVR的长期用户。我非常喜欢AVR-GCC可在我使用的两个主要操作系统(Mac OS X和Linux)上运行,是开源的,并受Atmel支持。我想回到PIC编程中(在90年代使用它们),因为那里有一些相当不错的PIC,例如PIC18F4550级芯片。 不幸的是,大多数用于PIC18的编译器似乎都是Windows付费的。而且他们几乎总是有我不需要的IDE。我更喜欢命令行编译器和Makefile,因此我可以通过看一个文件来了解代码是如何构建的。(而不是走过对话框的曲折迷宫) 我在SDCC上闲逛,但似乎没有PIC18F4550支持,即使有,它在网上的抱怨也听起来像是它的PIC18支持很弱,或者充其量让用户感到困惑。 那么,哪里有PIC18F4550支持的好的跨平台命令行C编译器呢? 如果失败,PIC18F4550最好的C编译器是什么?如何将其与Makefile一起使用?
11 pic  c  compiler 


1
I2C的压摆率是多少?
我正在使用C18编译器的内置功能在PIC18上配置I 2 C,如文档的第2.4节中所述: void OpenI2C2( unsigned char sync_mode, unsigned char slew ); 我不确定该怎么办slew。我可以从以下两个选项中进行选择i2c.h: SLEW_OFF:在100 kHz模式下禁用摆率 SLEW_ON:为400 kHz模式启用了摆率 在第257页的寄存器15-1中的数据表中,对这两个选项进行了更详细的说明: 1 =在标准速度模式(100 kHz和1 MHz)下禁用摆率控制 0 =为高速模式(400 kHz)使能摆率控制 我还是不明白-我有几个问题: 什么是转换率? 对我来说,这两个选项没有意义-如果我想禁用400kHz的摆率并启用100kHz,该怎么办?为什么是这样? 我应该SLEW_OFF何时选择何时SLEW_ON?
10 pic  c  i2c  software  c18 

3
如何为PIC24 RTCC校准32.768kHz晶体
我正在尝试找出PIC24 RTCC晶体校准的最佳方法。他们的应用笔记陈述了两种方法:使用查找表和使用参考系统时钟。 根据他们的说法,参考系统时钟方法是最好的,但他们建议使用系统振荡器,该系统振荡器应是RTCC晶体振荡器的倍数,例如16.777MHz。 有人真的为PIC24尝试过RTCC晶体校准工艺吗?我将不胜感激一些实用的准则。我正在使用PIC24FJ128GA006。
10 pic  crystal  rtc  calibration 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.