共2条
1/1 1 跳转至页
急!急!一个关于汇编嵌入C的问题
问
我是用KEIL写的,程序如下:
#include "reg51.h"
#define uchar unsigned char
#ifdef asm
extern void sendcommand(uchar);
#endif
void sendcommand(uchar x)
{
#pragma asm
DATAB EQU P1.4
WRPIN EQU P1.5
CSPIN EQU P1.6
LCDCM: CLR CSPIN ;选中LCD
MOV A, #80H
MOV R6, #03H
LCM1: RLC A ;send 100
MOV DATAB,C
NOP
CLR WRPIN
NOP
NOP
NOP
SETB WRPIN
DJNZ R6, LCM1
MOV R6, #08H
MOV A, R6
LCM2: RLC A
MOV DATAB,C
NOP
CLR WRPIN
NOP
NOP
NOP
NOP
SETB WRPIN
NOP
NOP
NOP
DJNZ R6, LCM2
NOP
NOP
NOP
NOP
CLR DATAB
NOP
CLR WRPIN
NOP
NOP
NOP
NOP
SETB WRPIN
NOP
NOP
NOP
NOP
SETB CSPIN
NOP
NOP
NOP
NOP
SETB DATAB
#pragma endasm
}
main()
{
unsigned char i=0x01;
void sendcommand(i);
}
编译之后系统提示:error c161:'i' formal parameter ignored
实参哪里又问题啊??
请问各位大虾怎么回事,还有谁有这方面的资料?谢谢~~~ 答 1: 哥们,你的定义有问题在c51中不支持
void sendcommand(uchar x)这样的定义
你需要改为:
void sendcommand(x)
uchar x;
C51并不是标准的ANSI C,而是混合了c++和一些自己扩展的关于硬件的东西。
#include "reg51.h"
#define uchar unsigned char
#ifdef asm
extern void sendcommand(uchar);
#endif
void sendcommand(uchar x)
{
#pragma asm
DATAB EQU P1.4
WRPIN EQU P1.5
CSPIN EQU P1.6
LCDCM: CLR CSPIN ;选中LCD
MOV A, #80H
MOV R6, #03H
LCM1: RLC A ;send 100
MOV DATAB,C
NOP
CLR WRPIN
NOP
NOP
NOP
SETB WRPIN
DJNZ R6, LCM1
MOV R6, #08H
MOV A, R6
LCM2: RLC A
MOV DATAB,C
NOP
CLR WRPIN
NOP
NOP
NOP
NOP
SETB WRPIN
NOP
NOP
NOP
DJNZ R6, LCM2
NOP
NOP
NOP
NOP
CLR DATAB
NOP
CLR WRPIN
NOP
NOP
NOP
NOP
SETB WRPIN
NOP
NOP
NOP
NOP
SETB CSPIN
NOP
NOP
NOP
NOP
SETB DATAB
#pragma endasm
}
main()
{
unsigned char i=0x01;
void sendcommand(i);
}
编译之后系统提示:error c161:'i' formal parameter ignored
实参哪里又问题啊??
请问各位大虾怎么回事,还有谁有这方面的资料?谢谢~~~ 答 1: 哥们,你的定义有问题在c51中不支持
void sendcommand(uchar x)这样的定义
你需要改为:
void sendcommand(x)
uchar x;
C51并不是标准的ANSI C,而是混合了c++和一些自己扩展的关于硬件的东西。
共2条
1/1 1 跳转至页
回复
| 有奖活动 | |
|---|---|
| 2026年“我要开发板活动”第三季,开始了! | |
| 硬核工程师专属补给计划——填盲盒 | |
| “我踩过的那些坑”主题活动——第002期 | |
| 【EEPW电子工程师创研计划】技术变现通道已开启~ | |
| 发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
| 【EEPW在线】E起听工程师的声音! | |
| 高校联络员开始招募啦!有惊喜!! | |
| 打赏了!打赏了!打赏了! | |
我要赚赏金打赏帖 |
|
|---|---|
| RTOS怎么选?让我来给你答案!被打赏¥15元 | |
| 【S32K3XX】Flash驱动使用被打赏¥26元 | |
| 【FreeRtos】第一个任务的启动过程被打赏¥21元 | |
| 【分享开发笔记,赚取电动螺丝刀】FPB-RA6E2开发板的WDT功能测试被打赏¥22元 | |
| 关于cmakelist特性presets的使用被打赏¥20元 | |
| 【分享开发笔记,赚取电动螺丝刀】M5STACK系列屏幕质量测试程序,竟然有块亮斑?被打赏¥20元 | |
| 【分享开发笔记,赚取电动螺丝刀】快速搭建瑞萨FPB-RA6E2开发板开发环境被打赏¥14元 | |
| 【分享开发笔记,赚取电动螺丝刀】在音频测试中顺序的调整可改变功效被打赏¥18元 | |
| 【分享开发笔记,赚取电动螺丝刀】点阵显示模块及其应用-----献给新年的小礼物被打赏¥22元 | |
| 基于地奇星开发板的数码管模块显示技术被打赏¥23元 | |
我要赚赏金
