佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 1994|回复: 19

请问哪里有的学ISD1700 用 SPI 方式连接PIC

[复制链接]
发表于 14-2-2009 10:26 PM | 显示全部楼层 |阅读模式
我需要用 PIC 来 control 一个voice recorder chip ISD17240 用 SPI 方法。 芯片我得到了, 但是问题出在我完全看不懂 ISD 的 datasheet。 觉得很复杂,不知从何下手。请问哪里有的学或者有谁能教我写program?我会感激不尽。。。
回复

使用道具 举报


ADVERTISEMENT

发表于 14-2-2009 10:46 PM | 显示全部楼层
原帖由 cincailo 于 14-2-2009 10:26 PM 发表
我需要用 PIC 来 control 一个voice recorder chip ISD17240 用 SPI 方法。 芯片我得到了, 但是问题出在我完全看不懂 ISD 的 datasheet。 觉得很复杂,不知从何下手。请问哪里有的学或者有谁能教我写program ...


这个你不止要spi,你还要懂要怎样用isd17000/
我可以教你spi.不过interface isd17000你要自己settle.我懒惰看datasheet
回复

使用道具 举报

 楼主| 发表于 15-2-2009 04:44 PM | 显示全部楼层

回复 2# fritlizt 的帖子

那么要怎样开始学?有什么东西要注意? 真的很谢谢你。。。
回复

使用道具 举报

 楼主| 发表于 29-3-2009 12:49 PM | 显示全部楼层

回复 3# cincailo 的帖子

现在我已经会看ISD17240的datasheet。只是想问看要initialise SPI 在PIC 里要如何?什么情况要用到 MAX232? 有朋友告诉我要用MAX232 来控制baud rate,是这样吗?
回复

使用道具 举报

发表于 29-3-2009 10:55 PM | 显示全部楼层
原帖由 cincailo 于 29-3-2009 12:49 PM 发表
现在我已经会看ISD17240的datasheet。只是想问看要initialise SPI 在PIC 里要如何?什么情况要用到 MAX232? 有朋友告诉我要用MAX232 来控制baud rate,是这样吗?


只是想问看要initialise SPI 在PIC 里要如何?
-〉请参考pic datasheet. MSSP部分。

什么情况要用到 MAX232?
-〉当你要做到TTL -> 232 level shifting的时候。最普通就是mcu uart和电脑沟通。
原因是虽然都是uart,不过mcu不能直接和pc serial port. 电压不一样。 所以max232就是一个转换器。 把TTL转成rs232 voltage level

有朋友告诉我要用MAX232 来控制baud rate,是这样吗?
-〉baudrate由你的mcu 控制。max232只是一个level shifter.
当然max232也是有maximum baudrate.资料传送速度大过max baudrate就不能正常操作。

你的情况时你要用spi.这个不需要用到max232.除非你的device,需要232 level 的signal.
回复

使用道具 举报

 楼主| 发表于 30-3-2009 12:35 PM | 显示全部楼层

回复 5# fritlizt 的帖子

谢谢你。

我一直都有看你讲的MSSP 部分,有一点东西不明白。里面说到在 SPI
mode,只有在slave mode,才有用到第四个pin, bar SS, slave select。如果我的PIC 有时也有输送data,有时也有接受data,那么它还是master chip? 是不是只要control part 在PIC, 那么那个PIC就是 master ?

MSSP 部分里面有 MSSP Status register, MSSP control register 1 和 SSPBUF, 我需要configurate 它们吗?还是一个setup command 就行了? 例如:setup_spi (spi_master | spi_l_to_h | spi_clk_div_16);

谢谢。
回复

使用道具 举报

Follow Us
 楼主| 发表于 3-4-2009 04:55 PM | 显示全部楼层

回复 6# cincailo 的帖子

有多了一个问题,从 PIC master去 其它chip, slave (我是ISD voice recorder chip), 用 SPI 连接法, PIC 里有四个pins, 就是 SDO (从PIC 去 ISD),SDI (从ISD 去 PIC) ,SCK和SS。想请教如何可以知道SDI 是输送什么data byte 回去 PIC? 因为只有一条线, PIC SDI 连去 ISD MISO,要如何放 LED 或什么来显示data?
回复

使用道具 举报

发表于 4-4-2009 12:08 AM | 显示全部楼层
原帖由 cincailo 于 3-4-2009 04:55 PM 发表
想请教如何可以知道SDI 是输送什么data byte 回去 PIC? 因为只有一条线, PIC SDI 连去 ISD MISO,要如何放 LED 或什么来显示data?

如果你真的是有心想要学SPI, 那你就用两颗 PIC MCU , 用SPI 的方法链接, 第一个MCU(Master)不断的送已知的Data 出去, 比如'x',  然后另一颗PIC MCU (Slave)把收到的send到RS232用Hyperterminal 显示出来,你应该要得到’x‘ 。

当你做成这个后, 你之前问的SPI的问题就自然而然的自解了。
回复

使用道具 举报


ADVERTISEMENT

发表于 4-4-2009 01:13 AM | 显示全部楼层
原帖由 cincailo 于 30-3-2009 12:35 PM 发表
谢谢你。

我一直都有看你讲的MSSP 部分,有一点东西不明白。里面说到在 SPI
mode,只有在slave mode,才有用到第四个pin, bar SS, slave select。如果我的PIC 有时也有输送data,有时也有接受data,那么它还是 ...


setup_spi (spi_master | spi_l_to_h | spi_clk_div_16); 就可以了。
通常pic是master.
master slave之分就是master generate clock. 而slave就用这个clock来shynchronize communication.
回复

使用道具 举报

发表于 4-4-2009 01:15 AM | 显示全部楼层
原帖由 cincailo 于 3-4-2009 04:55 PM 发表
有多了一个问题,从 PIC master去 其它chip, slave (我是ISD voice recorder chip), 用 SPI 连接法, PIC 里有四个pins, 就是 SDO (从PIC 去 ISD),SDI (从ISD 去 PIC) ,SCK和SS。想请教如何可以知道SDI 是输送 ...


这个很难解释。
你先用high level built in function.再来了解也不迟。
ccs c里面已经有built in 的spi library.
回复

使用道具 举报

 楼主| 发表于 4-4-2009 05:38 PM | 显示全部楼层

回复 10# fritlizt 的帖子

high level built in function? 不好意思,是什么?
回复

使用道具 举报

 楼主| 发表于 4-4-2009 05:45 PM | 显示全部楼层

回复 8# pic 的帖子

但是我的PIC (master) 已经有一个slave了,现在又放多一个PIC 来做slave? 其实可以用flip flop来显示data吗?然后Flip flop 再接去LED。
回复

使用道具 举报

发表于 4-4-2009 05:46 PM | 显示全部楼层
原帖由 cincailo 于 4-4-2009 05:38 PM 发表
high level built in function? 不好意思,是什么?


就是ccs c 的built in function.
spi_setup();
spi_read();
spi_write();

[ 本帖最后由 fritlizt 于 4-4-2009 05:48 PM 编辑 ]
回复

使用道具 举报

发表于 4-4-2009 07:26 PM | 显示全部楼层
原帖由 cincailo 于 4-4-2009 05:45 PM 发表
但是我的PIC (master) 已经有一个slave了,

怎样又有master 又有slave?

现在又放多一个PIC 来做slave?

如果是学习用途, 我会用另一颗MCU。

其实可以用flip flop来显示data吗?然后Flip flop 再接去LED。

用Flip Flop?可以啊, 如果你不嫌麻烦。。。
回复

使用道具 举报

发表于 5-4-2009 01:00 AM | 显示全部楼层
原帖由 cincailo 于 4-4-2009 05:45 PM 发表
但是我的PIC (master) 已经有一个slave了,现在又放多一个PIC 来做slave? 其实可以用flip flop来显示data吗?然后Flip flop 再接去LED。


->但是我的PIC (master) 已经有一个slave了,现在又放多一个PIC 来做slave?
你这句是讲什么?不明白你要问什么。
schematics? 还是block diagram有吗?容易了解。
回复

使用道具 举报

发表于 5-4-2009 11:18 AM | 显示全部楼层
其实可以用flip flop来显示data吗?然后Flip flop 再接去LED。


可以试看 74LS595 Serial to Parallel Shift Register.
回复

使用道具 举报


ADVERTISEMENT

发表于 5-4-2009 01:09 PM | 显示全部楼层
原帖由 waiweng83 于 5-4-2009 11:18 AM 发表


可以试看 74LS595 Serial to Parallel Shift Register.


我说还是 74LS164 较容易使用,而且只有 14 个脚而已。
回复

使用道具 举报

发表于 5-4-2009 06:02 PM | 显示全部楼层
可以试看 74LS595 Serial to Parallel Shift Register.
我说还是 74LS164 较容易使用,而且只有 14 个脚而已。

我也来说可以用 CD4094。。。如果不嫌麻烦, 一个bit一个bit 慢慢去解。。。
master 送一个byte, 你解一个。。。
回复

使用道具 举报

 楼主| 发表于 5-4-2009 09:26 PM | 显示全部楼层

回复 15# fritlizt 的帖子

哦,是这样的,我有一个PIC作为master,然后有一个ISD17240 voice recorder chip 作为 slave。 那么在8# PIC 版主建议我用多另一个PIC作为slave,以便我能知道return data。(如果我没误解他的意思)所以不就会有一个PIC master,和两个slave咯, ISD17240 和 另一个PIC。
回复

使用道具 举报

发表于 5-4-2009 09:55 PM | 显示全部楼层
原帖由 cincailo 于 5-4-2009 09:26 PM 发表
哦,是这样的,我有一个PIC作为master,然后有一个ISD17240 voice recorder chip 作为 slave。 那么在8# PIC 版主建议我用多另一个PIC作为slave,以便我能知道return data。(如果我没误解他的意思)所以不就会有一个 ...

你误解了。
他说如果你想要知道spi怎么work.用两个pic来试试看,
一个master, 一个slave.
和ISD17240没关系。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 7-1-2025 08:26 AM , Processed in 0.138468 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表