999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

電源管理芯片AXP192在手持設備上的應用

2014-09-06 10:50:08鄒勁林超楊琦
單片機與嵌入式系統應用 2014年11期
關鍵詞:設備設計

鄒勁,林超,楊琦

(廣州中海達衛星導航技術股份有限公司,廣州 511400)

?

電源管理芯片AXP192在手持設備上的應用

鄒勁,林超,楊琦

(廣州中海達衛星導航技術股份有限公司,廣州 511400)

大多數移動或手持產品使用低功耗、高度集成的微處理器平臺,需要多路供電電壓和電池管理功能,電源管理芯片滿足這些需求并具備其他特性。本文介紹了一種國產電源管理芯片AXP192應用在以三星S5PV210移動處理器為核心的工業平板上的方案,給出了AXP192與S5PV210的電源分配設計、上電時序以及AXP192控制接口原理設計和基于Linux操作系統的驅動程序設計,實現了電源的智能管理,達到降低功耗、延長設備使用時間的目的。

電源管理;手持設備;PMIC;Linux;S5PV210;AXP192

引 言

AXP192 是KrossPower公司的一款高度集成的電源系統管理芯片(PMIC),具有可定制、初始化多路輸出電壓、可編程設置各路輸出電壓、體積小、加工方便和價格便宜等優點。配合S5PV210使用,可減少核心供電使用獨立電源數量,同時減小PCB使用面積,動態調節核心電壓,智能管理最小系統電源,最大程度降低設備使用功耗,從而達到延長設備使用壽命的目的。相比三星配套推薦的WM8310,在同樣滿足功能和性能穩定的基礎上,AXP192加工方便、價格便宜、供貨穩定和周期短是其最大的優勢。

1 硬件設計

1.1 S5PV210電源設計與上電時序

S5PV210工作模式有正常、待機、休眠3種。根據這3種工作模式,分析各路電源需要的電流大小、上電時間先后、使用電壓的大小等,將S5PV210的電源分成幾組,合并可以一起供電的電源,在滿足3種工作模式的前提條件下,盡可能優化電源的供給,減少獨立電源的使用。根據優化后的電源設計,S5PV210最小系統只需要3路DC-DC和7路LDO便可以正常工作,AXP192能提供7路電源,因此只需要額外增加3路獨立的LDO。本設計方法相比AXP192為Cortex-A8內核處理器推薦的設計減少了5路獨立電源,大大減少了獨立電源芯片的使用,這也是本設計的優勢所在。

AXP192具有3路DC-DC以及4路LDO,各路特性如表1所列。

7路電源輸出除了LDO1是固定電壓輸出外,其他6路電源均可通過I2C總線控制接口打開或者關閉其輸出,并可設置它們的電壓大小。

根據AXP192各路電源的驅動能力和S5PV210電源對電流大小的要求,將DC-DC1和DC-DC3分別接到S5PV210的內核電源VDD_INT_AP和VDD_ARM_AP,這兩個內核電壓隨著ARM內核、總線工作頻率做相應的調節,以實現正常工作情況下最優的功耗。DC-DC2給DDR2內存和S5PV210的內存總線接口電路供電,其他各路LDO給S5PV210的I/O電路供電。根據電源分配,額外增加的3路獨立LDO,其中LDO4供電VDD_ALIVE_AP,LDO5供電VDD_xPLL_AP,LDO6供電其他I/O電路。

表1 AXP192各路特性表

S5PV210有嚴格的上電時序要求,如圖1所示。為了保證每次上電都能正確運行,各路電源的上電時序必須要滿足其需求。AXP192除LDO1外的6路電源的上電時序均可配置,每步延時間隙分別有1 ms、4 ms和16 ms三種選擇,上電步驟選擇方式A則有7個上電順序配置。

圖1 S5PV210上電時序要求

圖2 AXP192與S5PV210通信接口設計

根據S5PV210上電時序要求設定3步上電順序,每步上電延時間隙均為4 ms。具體上電時序分配為:第1步上電DC-DC2,并用DC-DC2作為LDO4的輸入使其同時上電;第2步上電DC-DC1和DC-DC3,并用DC-DC1使能LDO5;第3步上電剩余的LDO。按此設計的供電方式簡單有效,S5PV210每次都能正常開機,并且運行穩定。

1.2 AXP192與S5PV210通信接口設計

AXP192通過I2C總線接口與S5PV210通信。工作時,I2C總線引腳上拉到系統I/O電源,S5PV210可以通過這個接口去打開或關閉某些電源輸出,設置它們的電壓,訪問內部寄存器和多種測量數據等。其他系統管理如復位信號、休眠信號、中斷信號等接口如圖2所示。

2 驅動程序設計

應用中采用Android2.3.7操作系統,其內核是Linux2.6.35。在Linux系統中,I2C總線驅動由3部分組成,即I2C總線核心、I2C總線驅動和I2C設備驅動,其中I2C核心、I2C總線驅動Linux內核已經完善,因此,驅動程序的開發主要集中在AXP192設備驅動這一層,用來實現對AXP192各種功能的操作控制,其中主要是對其寄存器的讀寫操作。驅動實現的功能有系統開關機、各路電壓的動態設置以及打開與關閉等。

Linux內核有兩種編寫I2C設備驅動方式:legacy方式和new style方式。應用中使用new style方式,其中重要的I2C_driver結構體為:

static struct i2c_driver axp192_pmic_driver = {

.probe = axp192_pmic_probe,

//當有i2c_client和i2c_driver匹配時調用

.remove = __devexit_p(axp192_pmic_remove),

//注銷時調用

.driver = {

.name = "axp192", //設備名稱

},

.id_table = axp192_ids,//匹配規則

};

下面介紹驅動中幾個函數的具體實現方法。

(1) AXP192設備初始化函數

static int __devinit axp192_pmic_probe(struct i2c_client *client,const struct i2c_device_id *i2c_id){

struct regulator_dev **rdev;

struct axp192_platform_data *pdata = client->dev.platform_data;

struct axp192_data *axp192;

int i = 0, id, ret;

if (!pdata)

return -EINVAL;

axp192 = kzalloc(sizeof(struct axp192_data), GFP_KERNEL); //分配內存空間

if (!axp192)

return -ENOMEM;

axp192->rdev = kzalloc(sizeof(struct regulator_dev *) * (pdata->num_regulators + 1), GFP_KERNEL);

if (!axp192->rdev) {

kfree(axp192);

return -ENOMEM;

}

if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C)) { //檢查I2C設備的功能

AXPDBG("i2c error");

return-ENODEV;

}

axp192->client = client; //將client賦值給全局變量

axp192->dev = &client->dev;

axp192->pdata = pdata;

i!2c_set_clientdata(client, axp192);

axp192_point = axp192;

mutex_init(&axp192->mutex); //互斥,防止線程卡死

return 0;

}

(2) I2C讀函數

static int axp192_i2c_read(struct i2c_client *client, u8 reg, u8 *dest){

struct i2c_msg msg[2];

uint8_t buf0[4];

uint8_t buf1[8];

int ret;

ret = i2c_smbus_read_byte_data(client, reg);

if (ret < 0){

printk(KERN_ERR "i2c_transfer failed:%d ",ret);

return -EIO;

}

*dest = ret & 0xff;

}

(3) I2C寫函數

static int axp192_i2c_write(struct i2c_client *client, u8 reg, u8 value){

return i2c_smbus_write_byte_data(client, reg, value);

}

(4) AXP192寄存器讀操作函數

static u8 axp192_read_reg(struct axp192_data *axp192, u8 reg){

u8 val = 0;

mutex_lock(&axp192->mutex);

axp192_i2c_read(axp192->client, reg, &val);

mutex_unlock(&axp192->mutex);

return val;

}

(5) AXP192寄存器寫操作函數

static int axp192_write_reg(struct axp192_data *axp192, u8 reg, u8 value){

mutex_lock(&axp192->mutex);

axp192_i2c_write(axp192->client, reg, value);

mutex_unlock(&axp192->mutex);

return 0;

}

具體的設備驅動完成后,將AXP192設備驅動的配置添加到相應的kconfig文件中,在配置內核選項時就可以把AXP192設備驅動添加到內核中,系統啟動時可自動加載AXP192設備驅動。驅動設計成功后,可以編寫相應的上層應用軟件對AXP192驅動進行管理應用,如控制某個設備電源的開關等。

結 語

AXP192完全可替代三星配套推薦的WM8310使S5PV210正常工作。相比WM8310,AXP192可輸出電源路數不多,需要額外增加3路LDO。但是,AXP192的QFN-48封裝比WM8310的0.4 mm間距焊球容易加工和維修,而且PCB設計走線要求比WM8310低。其他方面(如價格、供貨周期等)都有極大的優勢。

[1] 李俊. 嵌入式Linux 設備驅動程序[M].北京:人民郵電出版社, 2008:206-230.

[2] 程昌南.ARM Cortex-A8硬件設計DIY[M].北京:北京航空航天大學出版社, 2012(10): 9-160.

[3] 胡文,寧世勇,李明俊,等. Android嵌入式系統程序開發(基于Cortex-A8) [M].北京:機械工業出版社,2013(2):194-200.

[4] 朱南浩,李正祥.嵌入式Linux中I2C設備驅動程序的研究與實現[J].微計算機信息,2010,26(4): 67-69.

[5] Samsung Electronics. S5PV210_Hardware Design Guide_Rev1.0[EB/OL].(2010-02)[2014-05].http://www.samsung.com/global/business/semiconductor/.

[6] X-powers. AXP19x EVM Guide [EB/OL].[2014-05]. http://www.x-powers.com/.

[7] X-powers. AXP192 Datasheet v1.13 [EB/OL].[ 2014-05]. http://www.x-powers.com/.

鄒勁(學士),主要從事手持設備硬件開發。

Application of Power Management Chip AXP192 on Handheld Device

Zou Jin,Lin Chao,Yang Qi

(Product Research&Development Center,Hi-Target Survey Instruments Company Ltd.,Guangzhou 511400,Chian)

Because of making use of low-power and high-integrated microprocessor platform, most of mobile or handheld products require multiple supply voltages and battery management. Power management chip meets these needs and has other features.In this paper,domestic power management chip AXP192 is applied in the industrial tablet using Samsung S5PV210 mobile processor as the core.Through the designes of power distribution of AXP192 and S5PV210,power-on sequences,control interface of AXP192 and driver based on Linux, the intelligent management of power supply is realized so as to reduce power consumption and extend the use time of the equipments.

power management;handheld device;PMIC;Linux;S5PV210;AXP192

TP216

A

迪娜

2014-05-22)

猜你喜歡
設備設計
諧響應分析在設備減振中的應用
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于VB6.0+Access2010開發的設備管理信息系統
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
500kV輸變電設備運行維護探討
工業設計(2016年12期)2016-04-16 02:52:00
如何在設備采購中節省成本
主站蜘蛛池模板: aaa国产一级毛片| 青青热久麻豆精品视频在线观看| 91探花国产综合在线精品| 男女男免费视频网站国产| 亚洲精品无码人妻无码| 久久不卡国产精品无码| 五月天婷婷网亚洲综合在线| 国产精品亚洲五月天高清| 日本精品αv中文字幕| 亚洲综合久久一本伊一区| 动漫精品中文字幕无码| 国产中文一区二区苍井空| 亚洲欧美综合精品久久成人网| 波多野结衣无码AV在线| 亚洲天堂网在线观看视频| 在线观看精品自拍视频| 伊人精品成人久久综合| 亚洲—日韩aV在线| 亚洲高清无码久久久| 国产黑丝视频在线观看| 伊人蕉久影院| 欧美性色综合网| 亚洲欧洲美色一区二区三区| 国产亚洲欧美在线中文bt天堂| 色婷婷成人网| 欧美日本激情| 在线播放精品一区二区啪视频| 国产午夜无码专区喷水| 亚洲性影院| 国产精品大白天新婚身材| 亚洲系列无码专区偷窥无码| 亚洲香蕉久久| av无码一区二区三区在线| 国产好痛疼轻点好爽的视频| 美女被躁出白浆视频播放| 97精品国产高清久久久久蜜芽| 思思热精品在线8| 欧美午夜在线观看| 国产美女一级毛片| 午夜欧美理论2019理论| 99久久精品久久久久久婷婷| a级免费视频| 国产精品无码影视久久久久久久| 久久青青草原亚洲av无码| 国产成人AV男人的天堂| 亚洲IV视频免费在线光看| 国产精品无码久久久久AV| 成人福利在线观看| 亚洲最大综合网| 亚洲高清资源| 国产99免费视频| 在线观看国产黄色| 一级成人a做片免费| 国产亚洲成AⅤ人片在线观看| 人妻丝袜无码视频| 色播五月婷婷| 91一级片| 国产传媒一区二区三区四区五区| 亚洲丝袜中文字幕| 色综合网址| 毛片大全免费观看| 国产一级裸网站| 亚洲成人免费看| 国产伦片中文免费观看| 亚洲欧美综合另类图片小说区| 91国内在线视频| 丁香婷婷久久| 亚洲日本中文字幕乱码中文| 黄色网址免费在线| 日韩欧美中文| 日韩欧美亚洲国产成人综合| 热伊人99re久久精品最新地| 亚洲永久免费网站| 999国产精品永久免费视频精品久久| 久久婷婷六月| 色婷婷色丁香| 国产精品亚洲综合久久小说| 国产精品成人AⅤ在线一二三四| 激情网址在线观看| 久久青草热| 456亚洲人成高清在线| 国产精品亚洲片在线va|