pic相关内容

链接步骤无法找到符号(XC8编译)

我试图编译和链接使用XC8编译的C程序。我从C18编译器改变,做了一些细微的变化兼容性的code。随着C18的code编译和链接就好了。随着XC8,编译去罚款,但链接步骤失败,此错误: 错误[500]; 0未定义的符号: _putch(server.obj)_ENC_Init(server.obj)_ENC_WriteRegister(server.obj)_ENC_ReadRegister(s ..
发布时间:2016-08-24 13:00:26 C/C++

我怎么能写出硬件无关的功能,用C语言为PIC24的

我工作的一些code,它impliments的各种功能,如PID控制器,信号发生器等。 我的硬件提供了多种输入和输出。刚才我switch语句的负载来决定我的计算的源和目标。 例如PID控制器,还有一个开关命令,每一个决定哪些输入100ms的传递给pid_calculate功能,紧接着又切换到决定如何处理的返回值做。因为我有32个模拟输入,以及CAN,​​LIN和串行地输入,开关语句是巨大的! ..
发布时间:2016-08-23 12:08:14 C/C++

如何为int转换为一系列字符

我试图打破一个整数与C对8位微控制器(一个PIC)到其对应的ASCII码字符。 例如: 转换982至'9','8','2' 我什么都拿出看似很远pretty蛮力。这是什么,我基本上是做现在的主要思路: IF((10; = N)及和放大器;(N小于100)){ //隔离并更新幅度的第一阶 digit_0 =(N%10); //隔离和更新幅度的二阶 开关(N - (N%10)){ 情况 ..
发布时间:2016-08-23 12:01:07 C/C++

XC8错误224:非法#指令(第一行)

我使用Microchip的XC8编译器。他们要我的#include< xc.h> ,而不是包括特定芯片的头。然而,当我添加此code在我的code的第一线,我得到了错误: 错误[224] C:\\ ... \\ main.c中; 1.4非法“#”指令 在我的指令之前放置一个换行,我没有得到这个错误。为什么是这样? 我的全code:的#include< xc.h>#p ..
发布时间:2016-08-22 15:03:23 C/C++

设置输出端口高低C

我使用MPLAB利用CCS编译器编译在C程序。 我想设置输出端口为高或低使用定义的端口。 #bit portOut1 = PORTC.0 所以,我想我的设置 portOut1 高或低。 我用了3种方式来做到这一点,但只是一个工作过。但我不是满意。 1:(?不行的,为什么) portOut1 = output5.value; 2:(?不行的,为什么) output_bit(port ..
发布时间:2016-08-21 21:59:14 C/C++

我可以接受在Microchip的C18 RAM和ROM指针的函数?

当我宣布,接受为const char * 函数,我传递一个字符串,我得到一个 警告:[2066]在分配类型限定符不匹配 因为字符串文字 ROM为const char * 。这是同样的周围的其他方法。 虽然在PIC是哈佛架构中,存储器被映射到一个连续的地址空间,因此从理论上讲应当能够同时支持的RAM和ROM的指针相同的方式。也许我必须使用ROM指针,因为他们是24位,而RAM指针是16 ..
发布时间:2016-08-21 21:03:27 C/C++

使用C对多线程PIC18

怎样才能创建并行运行的线程编程时的 PIC18 ,因为没有操作系统? 解决方案 不要使用线程,使用一个事件循环。 在PIC18是一个小的处理器和事件循环风格为主意味着你不必让许多深栈游逛。你需要写你的code。在事件循环的方面,而且这可能是合理的。 如果你确实有一些长期运行的任务,使用计时器都不同中断优先级,允许高优先级事件循环,以preempt优先级较低的事件循环,并提出适当的工种到 ..
发布时间:2016-08-18 22:30:30 C/C++

@符号在C变量声明

我发现通过pic1250.h的名称PIC单片机这个头文件,我无法得到它使用的一些语法的窍门。 该文件的来源是: / * *为Microchip的头文件 * PIC芯片12c508 * PIC芯片12c509 *基线微控制器 * /静态挥发unsigned char型RTCC @ 0×01; 静态挥发unsigned char型TMR0 @ 0×01; 静态挥发unsigned ch ..
发布时间:2016-08-17 23:20:57 C/C++

如何在一个字旋转位

我使用的是dsPIC33F和海湾合作委员会。我想旋转一个字位一次左或右,像这样: MSB LSB 输入:0101 1101 0101 1101 右:1010 1110 1010 1110 左:1011 1010 1011 1010 (如果它是不明确的,LSB移动到最高位的位置为右旋转,反之亦然。) 我的处理器已经有右移(rrnc,RRC),并向左旋转指令(rlnc,RLC),所以我希望编译 ..
发布时间:2016-08-07 19:49:55 开发方法

如何编写使用内联汇编到闪存?

我使用的MPLAB C18编译器与 PIC18F87J11 ,我试图保存一些值到闪存,采用内嵌汇编,这是C和汇编code的组合。 它看起来像我能够尽快编写和正确读取闪存,但我动力循环我的照片,然后试图读什么,我从一个特定的地址保存previous,我没有得到相同的值。我节省了×09 到 0xB22A 地址。就像我说的,如果我保存该值然后立即读取它,一切都正确,但在重新设置PIC我得到 0×00 ..
发布时间:2016-07-18 21:36:57 .NET Framework

如何使用内联汇编与MPLAB C18?

我使用的MPLAB C18提供了一个内部​​汇编,以便从C项目调用汇编函数。我下面就如何使用内联汇编的规则,我怀疑一些关于“全文助记符必须用于表读/写”在我的建设项目导致语法错误消息。 内部汇编MPASM汇编器的差别如下:不支持伪指令注释必须使用C或C ++符号 全文助记符必须用于表读/写操作。即, TBLRD TBLRDPOSTDEC TBLRDPOSTINC TBLRD preINC TBL ..
发布时间:2016-07-18 21:36:54 .NET Framework

翻译总成C [写入内存与PIC18]

我试图写在我的PIC18F87J11闪存,但我理解装配一个问题。我的PIC数据表只有装配和我使用的C编译器。我想知道,如果有人可以帮我翻译code的C语言这一部分。这code可以发现这里,7.5节。 MOVLW code_ADDR_UPPER;与基地址加载TBLPTR MOVWF TBLPTRU MOVLW code_ADDR_HIGH MOVWF TBLPTRH MOVLW code_ADD ..
发布时间:2016-07-18 21:32:34 .NET Framework

写入EEPROM的PIC

是否有任何PIC单片机的程序员在这里? 我正在学习用PICKIT2和附带的16F690芯片的一些PIC单片机编程。我通过目前试行的各种设施的工作。我可以成功地阅读从code中的EEPROM,如果我设置MPLAB EEPROM中vaklue,但我似乎不能够修改使用PIC itsself值的字节。简单地什么也没发生,我不读回修改的值,我总是得到这意味着我原来那个写不工作? 这是我的code该节,我 ..
发布时间:2016-07-18 21:22:22 .NET Framework

你如何从调用C程序的汇编函数?

我很新的单片机编程特别 PIC18F87J11 和我我使用MPLAB C18 C编译器。我阅读了各种主题的数据表,如保存到内存或定时器工作。我注意到的例子是用汇编语言编写的,但我与它最小的经验。有没有在我的项目中使用汇编和C的力量一起的方法吗? 我不明白组装好,否则我会尝试在code转换为C,在这种情况下,我宁愿只使用汇编code有一些变化。 现在能有人告诉我,你将如何在MPLAB C18编译 ..
发布时间:2016-07-18 21:10:15 .NET Framework

最新最好的资源去学习PIC单片机汇编语言

我要开始工作的一个项目,我需要有汇编语言对PIC单片机的体面的理解。我非常熟悉C / C ++,所以我知道如何code在大多数情况下,我也做了很多项目,为PIC已经让我明白的架构,但已经做了我所有的编程它在' C'。 有一本好书或网站,做得很好解释什么都议会命令的含义及如何做很简单的任务(闪烁的LED,基本数学等)为PIC单片机? 编辑:这篇文章的主要目的是要求学习资源大会,不是辩论C的优点V ..
发布时间:2016-07-18 20:40:08 .NET Framework

PIC的组装

地址 STR 存储堆栈(可以使用弹出来获取它,和它的位置无关) 的.text STR: .string“测试\\ n” 但现在 STR 的地址不在堆栈(不能使用弹出来取水的时候,但 STR(%RIP)(RIP相对寻址)是PIC):的.text STR: .skip 64 这是我从我的previous发现的问题, 但我不明白汇编如何决定 ST ..
发布时间:2016-07-18 20:26:28 .NET Framework

怎样延迟PIC ASM工作?我真的困惑

我真的不理解的事。所有code我在网上看到莫名其妙的评论有它为什么这样做的随机数,很多次,但没有字面上解释为什么什么做什么或者做什么谁。我真的不知道。 例如: 使用cblock 延迟1 延迟2 延迟3 ENDC开始:。 。 。延迟 MOVLW 0.2 MOVWF延迟1;&放大器;&功放;&功放;&安培; MOVLW 0.3 MOVWF延迟2 MOVLW 0.4< ------这里的重要注 ..
发布时间:2016-07-18 20:21:15 .NET Framework

如何读取连续数据并显示它

我要送的PIC连续数据(从模拟输入),蓝牙模块,然后我试图与Android阅读(超级终端,我得到的值从0到255)。我怎么可以改变我的code读取3个字节的字符串,并立即显示成TextView的。现在,我可以显示数据,但它的速度太慢和值更新,只有当按钮是pressed。这是我的MainActivity.java: 公共类MainActivity延伸活动{ 私有静态最后字符串变量=“bluet ..
发布时间:2015-12-05 12:41:05 Java开发

十六进制转换为十进制当没有数据类型可以保存完整号码

好了,我正与一个PIC单片机,在C.这是16F,所以它不能持有整数大于32位的(无符号INT32提供最大的数据大小) 这是一个读者,我收到了5个字节的ID code。进行传递,我一定要带连接coded到BCD码,数字一个数字。我不能冲刺它为一个字符串,因为它是大的数据大小,并且不能处理它。我不能把它,因为没有操作定义它。 我想不出任何可能的解决方案,没有任何人有处理过? 编辑: 我接收在一 ..
发布时间:2015-11-30 21:17:45 C/C++