0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

應廣單片機MINI-C編程要點

應廣單片機 ? 來源:應廣單片機 ? 2023-10-17 14:17 ? 次閱讀

最近一個項目上需要用到數(shù)據(jù)值比較大的運算,求一個功率。很多小產(chǎn)品上雖然用到的顯示功率一般兩三位數(shù),但是要把這兩位數(shù)求出來還真的費點勁。電壓,我們一般用用毫伏表示,電流也是毫安,那么當5V電壓,1A的電流,計算數(shù)據(jù)為5000*1000=5000000=7A120H,這已經(jīng)不是2個字節(jié)可以容得下的數(shù)據(jù)范圍,而且兩字節(jié)相乘的結(jié)果也得用4個字節(jié)來存儲。當我們要把這4字節(jié)的十六進制數(shù)轉(zhuǎn)成十進制數(shù)時。用減法的效率一般很低啦。我這里給大家分享一個簡單的加3移位判斷法,這個子程序,體現(xiàn)了MINI-C的強大C語言匯編融合處理能力。也將MINI-C的數(shù)據(jù)指針用到恰到好處啦,有點自賣自夸。

入口參數(shù)是4字節(jié)的num,

輸出是全局變量,TEMP3~TEMP7,5個字節(jié),temp3是最高位。

void dword_to_dec(dword num)

{

byte temp2;

clear hb@fpp0_index

mov a, 0x20

mov temp2, a

clear temp3

clear temp4

clear temp5

clear temp6

clear temp7

set0 CF

shift:

slc num$0

slc num$1

slc num$2

slc num$3

slc temp7

slc temp6

slc temp5

slc temp4

slc temp3

dzsn temp2

goto adjdec

return;

adjdec:

mov a, la@temp7

mov lb@fpp0_index, a

call adjbcd

mov a, la@temp6

mov lb@fpp0_index, a

call adjbcd

mov a, la@temp5

mov lb@fpp0_index, a

call adjbcd

mov a, la@temp4

mov lb@fpp0_index, a

call adjbcd

mov a, la@temp3

mov lb@fpp0_index, a

call adjbcd

goto shift

adjbcd:

//;---------------------------------

//; mov a, 0x22

//;idxm fpp0_index, a

//;---------------------------------

idxm a, fpp0_index

add a, 0x03

mov g_byte, a

t0sn g_byte.3

idxm fpp0_index, a

idxm a, fpp0_index

add a, 0x30

mov g_byte, a

t0sn g_byte.7

idxm fpp0_index, a

ret 0x00

//;-------------the end of hex2bcd---------------------

}

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7614

    瀏覽量

    137249
  • 十進制
    +關(guān)注

    關(guān)注

    0

    文章

    67

    瀏覽量

    13246
  • 程序
    +關(guān)注

    關(guān)注

    117

    文章

    3793

    瀏覽量

    81223

原文標題:應廣單片機MINI-C,4字節(jié)轉(zhuǎn)十進制子程序

文章出處:【微信號:應廣單片機,微信公眾號:應廣單片機】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    誰有單片機c語言例子,求

    誰有單片機c語言例子,求
    發(fā)表于 08-08 17:09

    ***單片機

    需要性價比高單片機的找我,***單片機代理
    發(fā)表于 06-30 10:41

    一、單片機Mini-C語言基礎(chǔ) 精選資料分享

    開發(fā)的人,用匯編來開發(fā)還是有些抗拒的??戳艘幌潞喗椋?b class='flag-5'>應單片機支持Mini-C語言,一看就跟C語言有關(guān),我們來了解一下:二、
    發(fā)表于 07-15 09:04

    PMS150C的點燈程序代碼分享

    單片機價格美麗,性價比高,mini-c好用,適用于消費電子開發(fā)。但是案例demo太少了,為了方便大家能夠快速入門。這里貼出了一份經(jīng)典PMS150
    發(fā)表于 07-15 09:47

    單片機C語言編程注意的若干問題

    單片機C語言編程注意的若干問題》由會員分享,可在線閱讀,更多相關(guān)《單片機C語言
    發(fā)表于 07-15 09:12

    mini-c的缺點及解決辦法

    很多廉價的單片機只是支持匯編語言,而應單片機支持mini-c,非常不錯!可以最大限度發(fā)揮C的優(yōu)勢和編譯器的效率.下面我就說說我的體會:缺
    發(fā)表于 07-20 07:14

    單片機編程相關(guān)資料分享

    官方網(wǎng)站PMS134系列mini-c開發(fā)技術(shù)單片機
    發(fā)表于 11-22 06:21

    單片機mini-c查表的相關(guān)資料分享

    由于RAM有限,一般不建議在RAM中建立表格.如果又要用到表格怎么辦,別急,單片機可以查rom表.下面用數(shù)碼管輸出為例子,做個簡單的表格.注意表格只支持byte類型;最多可以放入255個數(shù)
    發(fā)表于 11-23 06:32

    單片機C語言編程注意的若干問題

    本文較詳細地分析了單片機C 語言的特點,就單片機系統(tǒng)資源對C 語言編程的制約,匯編與C語言混合
    發(fā)表于 08-25 14:16 ?43次下載

    單片機開發(fā)案例

    單片機價格美麗,性價比高,mini-c好用,適用于消費電子開發(fā)。但是案例demo太少了,為了方便大家能夠快速入門。這里貼出了一份經(jīng)典PMS150
    發(fā)表于 11-13 11:06 ?118次下載
    <b class='flag-5'>應</b><b class='flag-5'>廣</b><b class='flag-5'>單片機</b>開發(fā)案例

    單片機-IO口的使用

    單片機-IO口的使用今年入職了一家做方案的公司,有用到臺灣的單核單片機,對于一款新的
    發(fā)表于 11-13 18:06 ?37次下載
    <b class='flag-5'>應</b><b class='flag-5'>廣</b><b class='flag-5'>單片機</b>-IO口的使用

    單片機

    官方網(wǎng)站PMS134系列mini-c開發(fā)技術(shù)單片機
    發(fā)表于 11-14 10:06 ?38次下載
    <b class='flag-5'>應</b><b class='flag-5'>廣</b><b class='flag-5'>單片機</b>

    單片機mini-c查表

    由于RAM有限,一般不建議在RAM中建立表格.如果又要用到表格怎么辦,別急,單片機可以查rom表.下面用數(shù)碼管輸出為例子,做個簡單的表格.注意表格只支持byte類型;最多可以放入255個數(shù)
    發(fā)表于 11-14 16:06 ?28次下載
    <b class='flag-5'>應</b><b class='flag-5'>廣</b><b class='flag-5'>單片機</b><b class='flag-5'>mini-c</b>查表

    單片機MINI-C編程要點

    很多廉價的單片機只是支持匯編語言,而應單片機支持mini-c,非常不錯!可以最大限度發(fā)揮C的優(yōu)勢和編譯器的效率.下面我就說說我的體會:缺
    發(fā)表于 11-23 17:51 ?57次下載
    <b class='flag-5'>應</b><b class='flag-5'>廣</b><b class='flag-5'>單片機</b><b class='flag-5'>MINI-C</b><b class='flag-5'>編程</b><b class='flag-5'>要點</b>

    臺灣OTP系列單片機

    臺灣OTP系列單片機型號臺灣OTP系列單片機,以杰出的晶片設(shè)計能力發(fā)展出多系列高效能的微
    發(fā)表于 11-26 14:21 ?35次下載
    臺灣<b class='flag-5'>應</b><b class='flag-5'>廣</b>OTP系列<b class='flag-5'>單片機</b>