问答

汇集网友智慧,解决技术难题

21ic问答首页 - TAG - pic
  • PIC 单片机Linux下C编译环境求助:Linux版本的C编译器下载哪个

    目前项目需要在linux下把C编译成hex(适配PIC内核),只需要编译环境,目前自己尝试了下载Linux版本MPLAB IDE加 XC8 C编译器,发现是需要额外安装JRE,使用MPLAB IDE环境才能编译成hex,能否不用IDE环境将C编译成hex,有大佬了解过这块吗

    编译环境 C编译 linux pic

    605浏览量 1回复量 关注量
  • Pic18 foc 电机驱动原厂demo sos

    你好,有pic 单片机 foc 电机驱动原厂demo吗或者链接,多谢

    pic

    3194浏览量 0回复量 关注量
  • PIC单片机,仿真可以运行,上电就不能运行。

    请教一个问题,我用的单片机是dspic33fj256mc710a,突然发现用仿真器仿真单片机可以正常运行,但是上电启动,MCU就不运行了。目前,试了2块板子都是这样;如果是软件的原因,会是什么原因?

    pic 仿真 上电 不运行

    1150浏览量 2回复量 关注量
  • 睡眠中可以用数据接收中断唤醒吗 sos

    MCC中应该调用哪个函数可以实现用数据接收来唤醒,让PIC退出睡眠模式

    pic 嵌入式

    946浏览量 0回复量 关注量
  • PIC18F25K83存储器违例复位

    最近在用PIC18F25K83写个程序,内存显示还很富裕,但是运行起来总是复位,监测到PCON1的MEMV为0,是由存储器执行违例导致的复位。不知道为什么。Memory Summary: Program space used 4E36h ( 20022) of 7800h bytes ( 65.2%) Data space used 36Dh ( 877) of 7FFh bytes ( 42.8%) Configuration bits used 5h ( 5) of 5h words (100.0%) EEPROM space used 0h ( 0) of 400h bytes ( 0.0%) ID Location space used 10h ( 16) of 10h bytes (100.0%) Data stack space used 0h ( 0) of 438h bytes ( 0.0%)

    pic 存储器 复位 PIC18F se

    1273浏览量 1回复量 关注量
  • RSL区别 sos

    料号: PIC18F67K90-I/PT PIC18F67K90-I/PTRSL 应用: 热水器 麻烦各位大神请教下,这两款到底有什么区别?RSL从规格书上看是硅版本A3,没有这个尾缀的硅版本是什么?

    微芯 RSL意义 RS ic pi pic

    1902浏览量 0回复量 关注量
  • PIC有类似于stm32的滴答时钟配置吗?

    如题所述

    技术交流 pic 时钟配置

    5173浏览量 13回复量 关注量
  • spics片选线 sos

    AC7811OBFE里的两个spi 接口的cs片选线用混了

    pic spi 接口 SPI接口 AC

    3153浏览量 0回复量 关注量
  • CAN的FIFO如何同时接收超过32个报文

    各位大佬,请教个问题:MCU是PIC32MX795F512L, 使用CAN1, FIFO1和FIFO2设置为接收FIFO,32个报文深度。 与过滤器0匹配的存放在FIFO1, 与过滤器1陪陪的存放在FIFO2, 过滤器0和过滤器1设置的ID和屏蔽器都相同。 我现在有50个报文需要同时接收。 但是测试的程序只能同时接收32个报文。 请问,如何设置或修改程序,才能同时接收超过32个报文呢。

    CAN FIFO 过滤器 MCU pic PIC32

    2126浏览量 2回复量 关注量
  • 刚学PIC,MPLAB X IDE编译报错,感觉不像是程序的问题

    make[2]: *** [build/default/production/mcc_generated_files/mcc.p1] Error 1 make[2]: *** [build/default/production/mcc_generated_files/tmr0.p1] Error 1 make[2]: *** [build/default/production/mcc_generated_files/tmr2.p1] Error 1 make[2]: *** [build/default/production/mcc_generated_files/pwm6.p1] Error 1 terminate called after throwing an instance of 'std::invalid_argument' what(): No such file or directory

    IDE 编译 mplab pic TE default

    2700浏览量 4回复量 关注量
  • PIC33F 9位 485 通信发送时为什么进入接收中断

    多次接收没问题,数据都能正确接收,发一次上传参数指令程序运行发送子程序后会改变接收中断中的值导致第二次上位机发送的参数保存位置错位,从而不能上传参数

    pic 通信 指令 上位机

    1732浏览量 1回复量 关注量
  • 家人们,PIC串口通信的程序出问题了 sos

    刚学习PIC单片机的小白,用的dsPIC30f4011,程序是买板子送的,/*********************************************************************/ /*文件说明:uart发送接收*/ /*硬件配置: MCU: DSPIC30F4011, OSC: 使用片外部4M16倍频64MHz振荡器..*/ /*版本: v1.0*/ /*使用说明:P7短路帽连接AN0,P6短路帽连接为AVDD AVSS提供标准电源*/ /*修改记录:*/ /********************************************************************/ #include "p30f4011.h" #include "oled.h" _FOSC(0XC307);//FCKSM = 11;时钟切换禁止 0111=带有16倍频PLL的XT??16倍频PLL使能的XT晶振模式 (晶振频率为4 MHz到10 MHz _FWDT(0X0000);//关狗 _FBORPOR(0X3A3);//MCLREN禁止 欠压2.7V 上电延时64MS _FGS(0X03);// void UART_Init(void); void UART1_TX(unsigned char c); unsigned char UART1_RX(void);//接收数据 unsigned char Data; void System_Init(void)//系统初始化 { OSCCON = 0x33e0;//主振荡器 新振荡器主振荡器 4MHz64分频 PLL锁定(使能) TRISB = 0x0000; } void UART_Init(void) { U1MODE = 0x0000;//8位数据 无奇偶校验 1停止位 U1MODEbits.UARTEN = 1;//使能UART U1STA = 0x0000;//状态和控制寄存器 U1BRG = ((64000000/4/16)/9600)-1;//64MHz波特率9600(按照计算公式) IEC0bits.U1TXIE = 1;//发送中断允许 IPC2bits.U1TXIP = 7;//发送中断优先级7 U1STAbits.UTXEN = 1;// 使能发送 IEC0bits.U1RXIE = 1;//接收中断允许 IPC2bits.U1RXIP = 6;//接收中断优先级6 } void UART1_TX(unsigned char TXData)//发送数据 { while (U1STAbits.UTXBF); U1TXREG = TXData; } unsigned char UART1_RX(void)//接收数据 { unsigned char RXData; while (!U1STAbits.URXDA); RXData = U1RXREG; return RXData; } void Delay_1ms(unsigned int t)//t = 1000大概1s { unsigned int i,j; for(i = 0;i < t;i ++) for(j = 0;j < 100;j ++); } int main() { System_Init(); OLED_Init(); //初始化OLED OLED_Clear(); UART_Init(); disn(4,0,55);disn(5,0,69);disn(6,0,76);disn(7,0,67);disn(8,0,79);disn(9,0,77);disn(10,0,69);//Welcome // disn(1,1,36);disn(2,1,51);disn(3,1,48);disn(4,1,16);disn(5,1,45);disn(6,1,35);disn(7,1,53); while(1) { UART1_TX(UART1_RX()); Data = UART1_RX(); disn(4,1,Data/10000);disn(5,1,Data%10000/1000);disn(6,1,Data%1000/100);disn(7,1,Data%100/10);disn(8,1,Data%10); } } void __attribute__((__interrupt__, auto_psv)) _U1TXInterrupt(void)//发送中断 { IFS0bits.U1TXIF = 0; //清中断标志 } void __attribute__((__interrupt__, auto_psv)) _U1RXInterrupt(void)//接收中断 { IFS0bits.U1RXIF = 0; //清中断标志 } 最后的结果确实好像只能收发一个字节,收到1就能发1,但是收到123465这种一串就会出错,乱显示,如图: [img]https://pic2.zhimg.com/v2-f13e6aed7522dcae449131ab40a4dcfd_hd.png[/img] 请问各位大佬是哪里出错了呀程序,实在是找不到资料,找不到人问了

    嵌入式 单片机 串口通信 pic UART TE

    3276浏览量 0回复量 关注量
  • PIC47Q10读写EEPROM,我是用的MCC生成的代码,会有错误吗?

    MCC生成的代码如下:void WR_EEPROM(uint16_t bAdd, uint8_t bData) { uint8_t GIEBitValue = INTCONbits.GIE; NVMADRU = 0x31; NVMADRH = (uint8_t)((bAdd & 0xFF00) >> 8); NVMADRL = (uint8_t)(bAdd & 0x00FF); NVMDATL = (uint8_t)(bData & 0xFF); NVMCON0bits.NVMEN = 1; INTCONbits.GIE = 0; NVMCON2 = 0x55; NVMCON2 = 0xAA; NVMCON1bits.WR = 1; while (NVMCON1bits.WR) { } NVMCON0bits.NVMEN = 0; INTCONbits.GIE =GIEBitValue; } uint8_t RD_EEPROM(uint16_t bAdd) { NVMADRU = 0x31; NVMADRH = (uint8_t)((bAdd & 0xFF00) >> 8); NVMADRL = (uint8_t)(bAdd & 0x00FF); NVMCON1bits.RD = 1; NOP(); NOP(); return (NVMDATL); }

    EEPROM 读写 pic 代码 AD ui

    3103浏览量 4回复量 关注量
  • 为何不能在eeprom_write()函数设置断点breakpoint? sos

    mplab x ide+picc 9.8+icd4环境下,在eeprom_write()语句上设置断点时,始终不能在该位置停下来。 如何调试这些语句呢? 请大神帮下忙。 下载视频

    EEPROM 函数 WRITE point ic pic

    1350浏览量 0回复量 关注量
  • 进不了中断

    为啥我pic16f887电平变化中断进不了中断函数,仿真时候高低电平都有变

    电平 pic pi pic16 PIC16F 中断函数

    1184浏览量 2回复量 关注量
12下一页