社区
单片机/工控
帖子详情
软模拟SPI(高分相赠)
sunchaoyang1
2005-04-08 04:55:22
本人做毕业设计要求用80C51。
需要与nRF905通信(是SPI接口的)
80C51没有SPI接口,固我想设计一个简单的软SPI(用P口(P3.0,p3.1有它用)的几个引脚模拟SPI)
给位大虾帮---------------忙--------------想想
提供原程序最好。(C51)
...全文
315
6
打赏
收藏
软模拟SPI(高分相赠)
本人做毕业设计要求用80C51。 需要与nRF905通信(是SPI接口的) 80C51没有SPI接口,固我想设计一个简单的软SPI(用P口(P3.0,p3.1有它用)的几个引脚模拟SPI) 给位大虾帮---------------忙--------------想想 提供原程序最好。(C51)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xichen
2005-04-11
打赏
举报
回复
/*******************************************************************************
模块名称: spi.h
模块说明: c51单片机的i/o模拟spi操作
创建时间: 2005/03/09
创建者: xichen
********************************************************************************/
#ifndef SPI_H
#define SPI_H
sbit SPIS_N = P2^1;
sbit SPIC = P2^3;
sbit SPID = P2^2;
sbit SPIQ = P2^4;
extern void spi_reset();
extern void spi_write(unsigned char spi_bValue);
extern unsigned char spi_read();
#endif
/*******************************************************************************
模块名称: spi.c
模块说明: c51单片机的i/o模拟spi操作
创建时间: 2005/03/09
创建者: xichen
********************************************************************************/
#include "includes.h"
#define set_spi_cs() SPIS_N =1
#define clr_spi_cs() SPIS_N =0
#define set_spi_clk() SPIC =1
#define clr_spi_clk() SPIC =0
#define set_spi_di() SPID =1
#define clr_spi_di() SPID =0
#define read_spi_do() SPIQ
//------------------------------------------
void spi_reset()
{
set_spi_cs();
}
//-----------------------------------------
void spi_write(unsigned char spi_bValue)
{
unsigned char no;
clr_spi_cs();
for (no=0;no<8;no++)
{
clr_spi_clk();
if ((spi_bValue &0x80)==0x80)
set_spi_di();
else
clr_spi_di();
set_spi_clk();
spi_bValue = (spi_bValue <<1);
}
}
//----------------------------------------------
unsigned char spi_read()
{
unsigned char no,spi_bValue;
clr_spi_cs();
for (no=0;no<8;no++)
{
clr_spi_clk();
spi_bValue = (spi_bValue <<1);
set_spi_clk();
if (read_spi_do() ==1)
spi_bValue |=0x01;
else
spi_bValue &=~0x01;
}
return spi_bValue;
}
sunchaoyang1
2005-04-09
打赏
举报
回复
我知道好做的呀,不过有大虾帮忙,就能那到一个可靠点的程序了
zys0001
2005-04-09
打赏
举报
回复
SPI比I2C好做,楼主仔细看一下时序,应该能做的出来的,要看清楚芯片的传输速度
xichen
2005-04-08
打赏
举报
回复
星期一给你,现在在家里
suyun9329
2005-04-08
打赏
举报
回复
做一个??网上有啊,找一个方便点
icesnows
2005-04-08
打赏
举报
回复
SPI接口应该是比较简单的,比较好做的吧!你要搞清楚它的时序
基于STM32的ADS1263 程序
ADS1263是32位+24位
高分
辨率多达9通道积分ADC,常用于温度压力等微小信号测量,具有很好的线性,本例基于STM32F4的ADS1263 程序, 使用引脚
模拟
SPI
通信进行多通道扫描,使用内部2.5V参考电压,单端采集,代码层次结构简明清晰
RTD 2556CG 2660.rar
ReaLTEk RTD2556多功能显示控制器结合了
模拟
RGB输入接口、HDMI 1.4兼容的数字输入接口与HDCP1.4的DVI数字输入接口。嵌入式单片机以工业标准8051为核心,外设串行闪存。 RTD2556-CG适用于多个市场细分和显示器应用,如显示器、一个PC和嵌入式应用程序 RTD2556特性: General 支持高达1920x1080@60 hz的输入格式 支持eDP面板接口 放大缩放 带
spi
FLASH控制器的嵌入式单片机 它在键盘应用程序中包含4个ADC 只需要一个晶体就能产生所有的定时 可编程内部低压复位(LVR)
高分
辨率6路PWM输出,宽范围可选PWM频率 Crystal 支持14.318MHz晶体型 Analog RGB Input Interface 支持1个
模拟
输入 集成8位三通道210 MHz ADC/PLL HSYNC嵌入式可编程施密特触发器 支持绿同步(Sog)和各种复合同步模式 片内高性能混合PLLs
高分
辨率真64相ADC PLL YPbPr最多支持HDTV1080p分辨率 High Speed Combo Receiver RTD2556-CG支持1个高速Combo接收器端口。并可按需要配置为HDMI1.4(3GHz)或DVI 在HDMI模式下,支持HDMI1.4 在hdmi模式中,只支持数据启用模式 在hdmi模式下,支持6位、8位、10位和12位的颜色深度传输 在HDMI模式下,支持高带宽数字内容保护(HDCP 1.4/HDCP2.2) 在hdmi模式下,hdmi音频可以传输到I2S/spdif输出 在DVI模式下,支持数字内容保护(HDCP 1.4)
SPI
(裸机和驱动)视频教程
SPI
裸机,
SPI
OLED驱动,
SPI
flash 驱动和
SPI
MASTER驱动,本课程全面讲解了
SPI
的方方面面。
RTDTOOL 工具 2537固件.rar
ReaLTEk RTD2556多功能显示控制器结合了
模拟
RGB输入接口、HDMI 1.4兼容的数字输入接口与HDCP1.4的DVI数字输入接口。嵌入式单片机以工业标准8051为核心,外设串行闪存。 RTD2556-CG适用于多个市场细分和显示器应用,如显示器、一个PC和嵌入式应用程序 RTD2556特性: General 支持高达1920x1080@60 hz的输入格式 支持eDP面板接口 放大缩放 带
spi
FLASH控制器的嵌入式单片机 它在键盘应用程序中包含4个ADC 只需要一个晶体就能产生所有的定时 可编程内部低压复位(LVR)
高分
辨率6路PWM输出,宽范围可选PWM频率
模拟
技术中的A/D转换器LTC2400功能及应用
1 LTC2400的引脚功能和内部结构 LTC2400采用与
SPI
接口兼容的3线数字接口,可应用于
高分
辨率和低频应用场合,如称重、温度测量、气体分析、应变仪,数据采集,工业控制等方面。它采用8脚SO-8封装,其引脚排列如图1所示。 其引脚功能如下: 1脚VCC:电源; 2脚VREF:参考电压输入端; 3脚VIN:
模拟
信号输入脚; 4脚GND:接地脚; 5脚CS:片选端,低电平有效; 6脚SDO:数据输出端,同时也是转换数据有效的指示端; 7脚SCK:时钟脚,双向; 8脚FO:数字输入脚,用于选择需要抑制的频率和AD转换时间。
单片机/工控
27,370
社区成员
28,772
社区内容
发帖
与我相关
我的任务
单片机/工控
硬件/嵌入开发 单片机/工控
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章