- #include <reg52.h>
- #include <stdio.h>
- #include <intrins.h>
- sbit SCLK = P1^7;
- sbit MISO = P1^6; //SDO
- sbit CS = P1^4;
- typedef unsigned char INT8U; /* 8 bit 无符号整型 */
- typedef unsigned int INT16U; /* 16 bit 无符号整型 */
- INT8U read_one_word()
- {
- INT8U i = 0;
- INT8U temp = 0;
- INT16U one_data = 0;
- // MISO = 1;
- CS = 0;
- for(i = 0; i < 16; i ++)
- {
- one_data = one_data << 1;
- SCLK = 0;
- _nop_();
- SCLK = 1;
- _nop_();
- if(MISO = 1)
- {
- one_data = one_data | 0x01;
- }
- }
- SCLK = 0;
- CS = 1;
- return (one_data);
- }
- void display()
- {
- }
- void main()
- {
- CS = 1;
- MISO = 1;
- SCLK = 0;
- read_one_word();
- display();
- while(1);
- }
IO模拟SPI接口程序
最新推荐文章于 2024-08-14 22:06:31 发布