亚洲欧美国产日韩综合一卡_人成在线精品日韩_国产成人av在线播放不卡_小仙女导航精品导航_日本最新色网网址_中文無碼久久亞洲_蜜臀av午夜在线_精品三級內地國產在線觀看_狼人色精品视频给你_日朝在线黄色视频

上位機(jī)軟件開(kāi)發(fā)實(shí)例(上位機(jī)軟件開(kāi)發(fā)發(fā)展前景)

軟件開(kāi)發(fā) 3651
本篇文章給大家談?wù)勆衔粰C(jī)軟件開(kāi)發(fā)實(shí)例,以及上位機(jī)軟件開(kāi)發(fā)發(fā)展前景對(duì)應(yīng)的知識(shí)點(diǎn),希望對(duì)各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、如何用c語(yǔ)言開(kāi)發(fā)自己的上位機(jī)軟件

本篇文章給大家談?wù)勆衔粰C(jī)軟件開(kāi)發(fā)實(shí)例,以及上位機(jī)軟件開(kāi)發(fā)發(fā)展前景對(duì)應(yīng)的知識(shí)點(diǎn),希望對(duì)各位有所幫助,不要忘了收藏本站喔。

本文目錄一覽:

如何用c語(yǔ)言開(kāi)發(fā)自己的上位機(jī)軟件

一般開(kāi)發(fā)上位機(jī)軟件都是帶圖形界面的。C也能做出圖形界面的軟件,但是開(kāi)發(fā)周期太長(zhǎng)也不實(shí)用。所以最好還是需要會(huì)一些其他語(yǔ)言,例如C++,C#,Java這些做圖形界面開(kāi)發(fā)周期短的語(yǔ)言。既然會(huì)C,那么學(xué)習(xí)其他語(yǔ)言也只是一個(gè)熟悉語(yǔ)法的過(guò)程。所以很快就能上手,因?yàn)檎Z(yǔ)言都是相通的嘛??梢蚤_(kāi)闊自己的視野去學(xué)習(xí)一下新的語(yǔ)言。不是說(shuō)只會(huì)C有什么弊端,只是想說(shuō)會(huì)的多才會(huì)知道語(yǔ)言之間的優(yōu)劣。

只會(huì)C語(yǔ)言能不能開(kāi)發(fā)上位機(jī)軟件?

能。

現(xiàn)在C能做一些軟件的底層,也就是功能級(jí)的開(kāi)發(fā),當(dāng)然也確實(shí)的是,現(xiàn)在大部分連功能層都用C++寫(xiě)了...上位機(jī)軟件確定了功能用C寫(xiě),那你就可以上,上位機(jī)的管理你寫(xiě)不了,管理都給客戶(hù)端或者web,碰到那些玩意,C就往后靠吧。

If?Not?MSComm1.PortOpen?Then

??MSComm1.CommPort?=?7?'串口為7

??MSComm1.Settings?=?"9600,n,8,1"

??MSComm1.InBufferCount?=?0?'清除接收緩沖區(qū)

??MSComm1.OutBufferCount?=?0?'清除發(fā)送緩沖區(qū)

??MSComm1.InputMode?=?comInputModeBinary?'二進(jìn)制接收

??MSComm1.InputLen?=?0?'讀取接收緩沖區(qū)的所有字符

??MSComm1.PortOpen?=?True??'打開(kāi)串口

??MSComm1.RTSEnable?=?False?'置為發(fā)送狀態(tài)

End?If

Dim?pu()?As?Byte

Dim?strdata??As?String

Dim?crc_js()?As?Byte

ReDim?pu(7)??'這個(gè)數(shù)組是8位的查詢(xún)指令

pu(0)?=?"H00"?'溫度計(jì)地址

pu(1)?=?"H03"?'查詢(xún)指令

pu(2)?=?"H00"?'2、3為溫度計(jì)地址

pu(3)?=?"H00"?'2、3為溫度計(jì)地址

pu(4)?=?"H00"?'4、5為讀取寄存器長(zhǎng)度

pu(5)?=?"H02"?'4、5為讀取寄存器長(zhǎng)度

pu(6)?=?"HC5"?'6、7為CRC校驗(yàn)碼?因?yàn)槲覀儾恢涝O(shè)備的CRC校驗(yàn)規(guī)則所以用測(cè)試軟件產(chǎn)生的校驗(yàn)碼

pu(7)?=?"HDA"?'6、7為CRC校驗(yàn)碼

MSComm1.Output?=?pu

'不做任何事情,僅僅允許其它應(yīng)用程序處理它們的事件。

DoEvents

MSComm1.InBufferCount?=?0?'清除接收緩沖區(qū)

MSComm1.RThreshold?=?9?'所要接收的數(shù)據(jù)長(zhǎng)度,我們通過(guò)COM檢測(cè)精靈看到了回傳數(shù)據(jù)一共是9字節(jié)

MSComm1.RTSEnable?=?True?'轉(zhuǎn)為接收狀態(tài)

End?Sub

Private?Sub?Command2_Click()

Timer1.Enabled?=?False

End?Sub

Private?Sub?Form_Unload(Cancel?As?Integer)

????If?MSComm1.PortOpen?Then

????????MSComm1.PortOpen?=?False??'關(guān)閉串口

????End?If

????Timer1.Enabled?=?False

End?Sub

Private?Sub?MSComm1_OnComm()?'COM事件

????Dim?PA()?As?Byte

????Dim?PB?As?String

Select?Case?MSComm1.CommEvent

?Case?comEvReceive

????????????MSComm1.InputLen?=?0?'讀取接收緩沖區(qū)的所有字符

????????????PB?=?MSComm1.Input

????????????PA()?=?PB

????????????For?i?=?0?To?UBound(PA())

????????????????'Print?"PA("??i??")";?PA(i)

????????????????If?Len(Hex(PA(i)))?=?1?Then

????????????????????strdata?=?strdata??"0"??Hex(PA(i))

????????????????Else

????????????????????strdata?=?strdata??Hex(PA(i))

????????????????End?If

????????????Next

????????????'回傳的數(shù)據(jù)串:000304012600000AC4,這9字節(jié)根據(jù)通訊協(xié)議我們進(jìn)行拆分

????????????'00為協(xié)議內(nèi)回傳機(jī)號(hào),03為讀命令,04為返回的數(shù)據(jù)長(zhǎng)度?0126?為我要的溫度數(shù)據(jù)為十六進(jìn)制表達(dá),下面我進(jìn)行數(shù)據(jù)處理

????????????wd?=?CLng("H"??Left(Right(strdata,?12),?4))?/?10??"℃"???'根據(jù)通訊協(xié)議換算成溫度

????????????Text1?=?Text1??vbCrLf??strdata??"??"??wd

????????????strdata?=?""

???MSComm1.PortOpen?=?False??'關(guān)閉串口

?End?Select

End?Sub

Private?Sub?Timer1_Timer()

Call?Command1_Click

End?Sub

這是我的測(cè)試結(jié)果。

下面是通訊協(xié)議

這個(gè)是我的軟件用檢測(cè)精靈檢測(cè)的結(jié)果

你好,我想用vc++6.0開(kāi)發(fā)一個(gè)usb的上位機(jī)軟件,usb芯片用的是ft245,麻煩前

首先要熟悉VC++,基于VC++的MFC開(kāi)發(fā)比較方便,加載USB驅(qū)動(dòng),采用VC++編寫(xiě)類(lèi)似于串口通訊的USB數(shù)據(jù)收發(fā)程序。以前用過(guò)C語(yǔ)言,進(jìn)入VC++可能需要點(diǎn)時(shí)間,譬如還要熟悉C++和MFC.

利用電腦做上位機(jī)開(kāi)發(fā)一個(gè)軟件,用單片機(jī)做下位機(jī)。在上位機(jī)上點(diǎn)擊軟件上的按鈕能使單片機(jī)輸出一路I/O口

主要涉及到單片機(jī)基礎(chǔ)知識(shí),重點(diǎn)是串口通信,上位機(jī)可以考慮vc和.net,這兩種都可以。.net使用c#語(yǔ)言,感覺(jué)比較好上手,我也可以給你點(diǎn)視頻教程,一學(xué)就會(huì)。

關(guān)于上位機(jī)軟件開(kāi)發(fā)實(shí)例和上位機(jī)軟件開(kāi)發(fā)發(fā)展前景的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

掃碼二維碼