wc86110 发表于 2019-1-27 13:44 被小白套路成大白 |
海阔天空8 发表于 2019-2-23 21:53 跟不下水的人谈水就是扯呗 |
海阔天空8 发表于 2019-2-23 21:53 楼主抱怨啥呢,做个换颅手术不就能秒懂了么 ![]() |
static 发表于 2019-2-22 23:48 为什么不少人都把单片机神秘化了?包括写书的!怎么就不会说明白话呢?小孩子都能玩单片机,大人们却说不了明白话!? |
wushiye54 发表于 2019-2-22 19:56 楼主只是感兴趣,在家维修个家电,有经济来源,单片机完全是好玩而己,劝多了也皮了。 |
| 兄弟,建议多看看相关的书再学单片机吧 |
| 这是关于二进制的好话题,续继.................. |
| 围观围观,靖彩的独角戏!戏别停! |
|
本帖最后由 钻牛尖滴刘尖尖 于 2019-1-31 05:03 编辑 努力!努力!再努力!努力........地钻下去! |
| 对单片机还处在一种入门级的认识中,当你后面接触更多的类型的单位片机,你的认识就会加深。如果认大家现在就给你定一个认识标准都 是不合理的。加油! |
|
因为人们不懂用机器语言0和1代码和它(计算机)对话,所以使用了汇编语言, c语言 来编程 你要用0和1和它对话。你就要懂机器语言用0和1的代码。 |
shuisheng60 发表于 2019-1-28 21:43 我就是想用0和1于单片机对话。在一定的各引脚设置成特定电位状态下,向哪些引脚加上什么电位,怎么写入0和1的问题,,,,,,,,,, |
yzwzfyz 发表于 2019-1-26 08:55 我承认我对基础知识一知半解(半解也不到),逻辑电路还有时序逻辑电路吧?好像是“对应一组输入不一定有一组输出”?是这个意思吗?您下面的我一点也不懂了,,,,,, |
yzwzfyz 发表于 2019-1-26 08:55 您说得太专业!还是听不懂。谢谢,真的谢谢。 |
zl2168 发表于 2019-1-30 12:04 ^_^,我现在有的就是时间!希望有高人把话说明白(哪跟哪接不就完了吗?绕不完的圈子还真是浪费时间!) |
佛云 发表于 2019-1-30 09:24 您说的大概就是这个意思吧!我时间不多了,不学什么C语言了,就想用0和1(电位的H,L)对单片机的引脚进行交流,,,,,,,, |
本帖最后由 海阔天空8 于 2019-1-30 15:31 编辑 angmall 发表于 2019-1-30 07:27 您说得没错!有人之后才有得人话,很多不同种类的话,C语言也差不多是这个意思,但C语言绝不是唯一的和计算机对话的语言,,,,,,,,我的办法更直观:就像手指着一个苹果说“苹果”(中文),APPLE(外文),XXXX(他国文字),,,“苹果”也好,“APPLE”也好,“XXXX”也好都是和嘴对话(吃)的!^_^,,,,,,,,,,, |
| 钻牛角尖!若你是个聪明人,钻钻也罢!若你不是个聪明人,就是浪费时间! |
海阔天空8 发表于 2019-1-26 16:46 曾经,我遇见一个奇人,小学都没毕业,凭着自己对单片机的爱好执着,写程序只用机器码(16进制)就搞定,一般51单片机的烧录文件(bin文件),不用反汇编,直接在bin文件上修改代码添加功能.看来这位兄台想走这条路了,加油 |
angmall 发表于 2019-1-29 20:17 还是先有计算机呀 |
海阔天空8 发表于 2019-1-29 18:14 C语言在单片机之前是编程大型计算机的. |
| 参与人数 1 | 黑币 +35 | 收起 理由 |
|---|---|---|
|
| + 35 | 很给力! |
shuisheng60 发表于 2019-1-29 17:35 C语言真不是单片机出现以后才有!那C语言在单片机之前是干什么的? |
| 接线去看模电数电。C语言真不是单片机出现以后才有!你有这功夫用在该用的地方。 |
| 参与人数 8 | 黑币 +192 | 收起 理由 |
|---|---|---|
|
| + 35 | |
|
| + 10 | |
|
| + 12 | |
|
| + 15 | |
|
| + 15 | |
|
| + 35 | |
|
| + 35 | 批评的很对! |
|
| + 35 | 很给力! |
shuisheng60 发表于 2019-1-28 21:43 怎么就没遇到一位能讲明白硬件如何接线的呢!什么C语言?C语言不也是单片机出现以后才有的吗?没有C语言单片机就不能动了吗? |
yoxi 发表于 2019-1-27 18:20 不对!单片机就得先下水,你们都上岸了,忘了水下了。^_^,,,,,,,,,,, |
wc86110 发表于 2019-1-27 13:44 同一个不想下水的人谈游泳就是扯! |
| 参与人数 8 | 黑币 +148 | 收起 理由 |
|---|---|---|
|
| + 12 | |
|
| + 12 | |
|
| + 12 | |
|
| + 12 | |
|
| + 15 | |
|
| + 35 | |
|
| + 15 | 赞一个! |
|
| + 35 | 很给力! |
海阔天空8 发表于 2019-1-27 10:53 被楼主整成小白了 ![]() ![]() |
angmall 发表于 2019-1-26 23:20 我不懂 |
海阔天空8 发表于 2019-1-26 16:46 这程序翻译成这样的代码用0和1 你能识别用什么指令吗? 0b01110101, 0b10110000, 0b00000000, 0x01111001, 0b11111111, 0b01111000, 0b11111111, 0b11011000, 0b11111110, 0b11011001, 0b11111100, 0b01110101, 0b10110000, 0b00000001, 0x01111001, 0b11111111, 0b01111000, 0b11111111, 0b11011000, 0b11111110, 0b11011001, 0b11111100, 0b10000000, 0b11101000 汇编语言编程 start: mov 0xb0, #0x00 ; //I/O P3.0 口特殊功能寄存器 l1: mov r1, #0xff ; 延时程序 ;向R1寄存器中载入十六进制数FFH mov r0, #0xff ;向R0寄存器中载入十六进制数FFH l2: djnz r0, l2 djnz r1, l1 mov 0xb0, #0x01 l3: mov r1, #0xff ; 延时程序 ;向R1寄存器中载入十六进制数FFH mov r0, #0xff ;向R0寄存器中载入十六进制数FFH l4: djnz r0, l4 djnz r1, l3 sjmp start ;/ 跳start执行循环体 对应的汇编程序翻译成这样的代码 0x75, 0xb0, 0x00, // mov 0xb0, 0x00 0x79, 0xff, // mov r1, 0x10 0x78, 0xff, // mov r0, 0xff 0xd8, 0xfe, // djnz r0, -2 0xd9, 0xfc, // djnz r1, -4 0x75, 0xb0, 0x01, // mov 0xb0, 0x01 0x79, 0xff, // mov r1, 0x10 0x78, 0xff, // mov r0, 0xff 0xd8, 0xfe, // djnz r0, -2 0xd9, 0xfc, // djnz r1, -4 0x80, 0xe8, // sjmp -24 |
海阔天空8 发表于 2019-1-26 16:46 看样子楼主已有更好更新解决途径和办法了,能不能和大伙们分享一下 |
yzwzfyz 发表于 2019-1-26 08:55 “用任何语言写的程序,最终都会被编译平台(如:KELL)翻译成这样的代码,放入(以51为例)从0000H开始的存储区中。”----------也就是说单片机只能识别0和1呀!这不就完了吗?我就是要用0和1和它对话。 |
| 坐地板上听课.................. |
|
六不搭对! 计算机含单片机,是由众多的逻辑电路构成, 逻辑电路是:对应于一组输入就产生一组输出(狭义的)。 CPU会沿既定的路径(存储区)依序取出数据(指令),并把这个数据看成是逻辑电路的“输入”【取指】,于出就产生出一组“输出”【执行】,也就是“取指”与“执行”。 做完一组再取下一组,永远不息直至掉电(没有休眠,休眠可以看作是时钟频率=0,实际上也是这么做的:休眠是切断了时钟通道)。 所谓【编程】:就是将特定的、有目的代码(可以认为是数据、可以认为是指令、其实就是0101……这样一串串的字节)有序放在CPU要取指的路径上(对于51单片机来说,就是从0000H单元开始的程序区),让CPU一条一条的取指执行。 用任何语言写的程序,最终都会被编译平台(如:KELL)翻译成这样的代码,放入(以51为例)从0000H开始的存储区中。 明白这个道理,就会知道:C语言为何必须要知道是采用的什么芯片了,实际就是告诉平台,让它按照用什么指令,放在什么地方。(不同的类型的单片机,指令系统可能不同,程序的也可能起点不同。) |
|
楼主需要找的是这货么,好像市面上很难找到现货,要玩转它还需下点功夫 |