`

基于c8051f310的mcp41010数字电位器驱动源码

阅读更多
#include "mcp41010.h"

void  MCP41010_init()
{
	//P2MDIN                      						// 上电默认 digital
	P2MDOUT = setBits(P2MDOUT,pin4|pin5|pin6|pin7);     // port2  4567  push-pull
}

#define  mcp_setCS()   {P2=setBits(P2,csx);}
#define  mcp_clCS()    {P2=clrBits(P2,csx);}
//cmd=0x11 电位器0 写数据模式
void MCP41010_writeData(u8 cmd,u8 dat,u8 csx)         
{
    u8 i;
    mcp_setCS(); 	_nop_();    //cs1 cs2 
    mcp_sck=1;
    mcp_sci=0; 
	mcp_clCS();   _nop_();
	mcp_sck=0;	  _nop_();

	for(i=0;i<8;i++)         
	{ 
		mcp_sci=getBit(cmd,7);
		_nop_();_nop_();
		mcp_sck=1; //data in
		_nop_();_nop_();
		mcp_sck=0; 
		cmd <<= 1;		_nop_();
	}
    
	for(i=0;i<8;i++)          
	{ 
		
		mcp_sci=getBit(dat,7);
		_nop_();_nop_();
		mcp_sck=1;
		_nop_();_nop_();
		mcp_sck=0;
		dat <<= 1; 		_nop_();
	}
	mcp_setCS(); 	_nop_();
}

 

 

#ifndef _MCP41010_H
#define _MCP41010_H
#include "sys51.h"

extern void MCP41010_writeData(u8 cmd,u8 dat,u8 csx);
extern void MCP41010_init();


//用了2个电位器,所以有csa,csb
sbit mcp_csa=P2^4;
sbit mcp_csb=P2^5;

sbit mcp_sck=P2^6;
sbit mcp_sci=P2^7;



#endif


 

0
0
分享到:
评论

相关推荐

    基于C8051F310EVM的演讲计时器设计

    《基于C8051F310EVM的演讲计时器设计》 本文将深入探讨基于C8051F310微控制器的演讲计时器的设计原理与实现方法,这是华中科技大学单片机课程设计的一个实例,采用汇编语言编程。C8051F310是一款高性能、低功耗的...

    c8051f310的ADC例程

    C8051F310是一款由Silicon Labs(芯科实验室)推出的微控制器,它拥有丰富的片上资源,包括一个高精度的模数转换器(ADC)。ADC是数字系统与模拟世界交互的关键接口,能够将连续变化的模拟信号转化为离散的数字值。...

    C8051F310多功能数字钟.zip

    标题中的"C8051F310多功能数字钟"提到了一个基于C8051F310微控制器的项目,这是一个常见的单片机,由Silicon Labs(芯科实验室)生产。C8051F310是一款高性能、集成度高的微控制器,适用于各种嵌入式应用,包括数字...

    c8051f310PCB封装

    C8051F310 LQFP—32 封装

    adc.rar_C8051F310_C8051F310 ADC_C8051F310如何AD_c8051f310 AD

    标题中的"adc.rar_C8051F310_C8051F310 ADC_C8051F310如何AD_c8051f310 AD"指的是一个关于C8051F310微控制器(MCU)的模拟数字转换(ADC)功能的资源包。C8051F310是一款高性能、低功耗的8051微控制器,内置了模拟...

    C8051F310实验程序

    C8051F310是一款高性能的微控制器,由Silicon Labs(芯科实验室)制造,广泛应用于各种嵌入式系统设计中。这款MCU具有丰富的片上资源,包括多个计数器、串口通信接口、PCA(通用定时器/比较模块)、温度传感器以及...

    C8051F310例程

    C8051F310是一款高性能的8051微控制器,它集成了丰富的片上外设,如PWM(脉宽调制)模块、定时器、A/D(模拟-数字)转换器、D/A(数字-模拟)转换器、串行通信接口以及I²C兼容的24C04 EEPROM,还支持FLASH读写和LCD...

    C8051F310虚拟I2C C语言代码

    C8051F310是一款微控制器,属于Silicon Labs公司的8051系列。8051是经典的微处理器架构,广泛应用于各种嵌入式系统中。这款芯片集成了许多功能,包括模拟电路、数字外设以及通信接口。在本场景中,我们关注的是它的...

    C8051F310芯片资料

    C8051F310芯片是一款高性能的微控制器,属于C8051系列,是Silicon Labs(芯科实验室)推出的一款51单片机产品。这个芯片资料包,尤其是其中的"C8051F31x.pdf"文件,很可能是该芯片的完整数据手册,包含了丰富的技术...

    c8051f310的PWM例程

    C8051F310是一款由Silicon Labs(芯源系统)推出的微控制器,它拥有丰富的外设功能,包括PWM(脉宽调制)模块。对于电子爱好者和初学者来说,掌握如何在C8051F310上实现PWM是十分重要的技能,因为PWM广泛应用于电机...

    C8051F310初始化.rar

    C8051F310是一款微控制器,属于Silicon Labs公司的C8051系列。这个系列的MCU以其高性能、低功耗和集成度高而受到广泛应用。C8051F310的初始化是编程过程中至关重要的步骤,确保其正确运行和功能的实现。 初始化C...

    C8051F310 开发板原程序-ADC

    标题 "C8051F310 开发板原程序-ADC" 指向的是基于C8051F310微控制器的一款开发板的原始程序,重点在于ADC(模拟数字转换器)的功能实现。这个描述暗示了我们讨论的核心是C8051F310芯片如何通过其内部的ADC模块来处理...

    C8051F310单片机PWM程序.rar_C8051F310_C8051F310单片机PWM程序_c8051 pwm编程_c8

    C8051F310是一款高性能、低功耗的8051微控制器,由Silicon Labs(芯科实验室)公司生产。这款单片机拥有丰富的内置功能,其中包括脉宽调制(PWM)模块,使得它在电机控制、电源管理、信号发生和许多其他应用中非常...

    pwm.rar_c8051f310 PWM

    在本文中,我们将详细讨论如何在C8051F310微控制器上实现8位PWM输出,以及相关的重要知识点。 C8051F310是一款高性能、低功耗的8051微控制器,由Silicon Labs公司生产。它集成了丰富的模拟和数字功能,包括多个PWM...

    UART0.rar_C8051F310_c8051f310 uart_c8051f310 uart_uart0_串口

    C8051F310是一款集成度高的微控制器,它内置了UART功能,方便开发者进行串行通信的设计。 在描述中提到的“串口发送,波特率96”,意味着这个程序设计的目标是实现通过C8051F310的UART0发送数据,且波特率设置为...

    C8051F310头文件

    FILE NAME : C8051F310.H ; TARGET MCUs : C8051F310, 'F311 ; DESCRIPTION : Register/bit definitions for the C8051F31x product family. ; ; REVISION 1.2 ; -- Added VDM0CN (0xff) ; ; REVISION 1.1 ; -...

Global site tag (gtag.js) - Google Analytics