模仿老式撥盤電話機撥號原理撥號

2021-08-25 18:43:02 字數 1727 閱讀 3841

總是有不少懷舊的人喜歡老**,老相機,比如我,每次看到老上海的**機,老香港的手提磚頭塊,總是會產生一種奇怪的感覺。
老話機每乙個格就是乙個脈衝,撥1就乙個格,撥9就9個格,也就是能聽到咔咔聲9次。每個對應位置就接通一次脈衝,錯過位置就斷了,
下乙個格又是乙個脈衝,0就是10個脈衝。
這裡只是在mtk做一些小嘗試,非完整**,請勿模仿。
#define dial_x  (ui_device_width/2)

#define dial_y ((ui_device_height/2)+30)

#define dial_r ((((ui_device_height>ui_device_width)?(ui_device_width/2):(ui_device_height/2))))

#define dial_in_r (20)

#define dial_color (gdi_color_black)

void my_gdi_draw_line(s32 x1, s32 y1, s32 x2, s32 y2, gdi_color line_color, s32 w)

else }

extern void my_gdi_draw_line(s32 x1, s32 y1, s32 x2, s32 y2, gdi_color line_color, s32 w);

extern void my_gui_draw_anm_dial(void);

if (my_layer2 != null)

initdesktopscreen();

gui_cancel_timer(my_gui_draw_anm_dial);

//gobackhistory();

}void my_gui_draw_dial(u16 angle)

; gdi_draw_circle(dial_x,dial_y,dial_r,dial_color);

gdi_draw_circle(dial_x,dial_y,(dial_r*618)/1000,dial_color);

gdi_draw_point(dial_x,dial_y,dial_color);

gdi_draw_point(dial_x+(int)((dial_r*809)/1000)*g_qj_gui_clock_acm_cosine_table[angle],dial_y+(int)((dial_r*809)/1000)*g_qj_gui_clock_acm_sine_table[angle],dial_color);

for (i = 0; i < 16; i++) }

void my_gui_draw_anm_dial(void)

gui_start_timer(100, my_gui_draw_anm_dial);

} #else

//gui_start_timer(100, my_gui_draw_anm_dial);

//my_gui_draw_dial(90);

my_gui_draw_anm_dial();

#endif

gdi_layer_set_blt_layer(my_base_layer, my_layer2, null, null);

gdi_layer_blt_previous(0, 0, ui_device_width - 1, ui_device_height - 1);

}

該文用到的三角形函式值陣列請參閱拙作:

POTS 普通老式電話業務

pots 普通老式 業務 pots plain old telephone service 普通老式 業務 pots 引用大多數家庭使用的標準 業務。pots 大約經歷100年左右的時間,由最初的模擬 時代 電子 時代發展到後來的公用交換 網路 pstn 時代。相反,基於高速 數字通訊線路的 業務,...

發簡訊 撥電話 10010小助手

package com.su.phonebill import android.content.intent import android.net.uri import android.os.bundle import android.telephony.smsmanager import andr...

Android 採用廣播接收者攔截外撥電話及其特性

攔截外撥 向外撥打 時系統化發出乙個有序廣播,雖然該廣播最終會被撥號器裡的廣播接收者所接收並實現 撥打,但我們可以在廣播傳遞給撥號廣播接收者之前先得到該廣播,然後和清除傳遞給撥號廣播接收者的 號碼,在撥號廣播接收者接收到該廣播時,由於 號碼為null,因此取消 撥打。public class pho...