亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 9111prtg.c

?? 凌華工控控制卡PCI-9111計數器采集卡使用例子
?? C
?? 第 1 頁 / 共 2 頁
字號:
        CreateWindow("BUTTON","6"       ,
                      WS_CHILD | WS_VISIBLE | BS_AUTORADIOBUTTON | BS_LEFTTEXT | WS_GROUP,
                      output_pos[4].x+100, io_pos[0].y+31+20,25,15, hWnd,IDC_CH+6, hInst, NULL);

        CreateWindow("BUTTON","7"       ,
                      WS_CHILD | WS_VISIBLE | BS_AUTORADIOBUTTON | BS_LEFTTEXT | WS_GROUP,
                      output_pos[4].x+100, io_pos[0].y+49+20,25,15, hWnd, IDC_CH+7, hInst, NULL);

        //default channel 0
        for (i=1;i<8;i++) bCheck[i]=FALSE;
        bCheck[0] = TRUE;
        channel = 0;
        SendMessage(GetDlgItem(hWnd,IDC_CH), BM_SETCHECK, 1, 0);

        hBlackBrush= CreateSolidBrush(RGB(0,0,0));
        hRedPen= CreatePen(PS_SOLID,1,RGB(255,0,0));
        hBlackPen= CreatePen(PS_SOLID,1,RGB(0,0,0));
        break;

    case WM_PAINT:
        hDC = BeginPaint(hWnd, &ps);

        // DMA analog input box
        SelectObject(hDC, GetStockObject(GRAY_BRUSH));
        Rectangle(hDC, output_pos[15].x-10, io_pos[15].y-24, output_pos[0].x+26, io_pos[0].y+195);
        SetTextColor(hDC,RGB(255,255,0));
        SetBkColor(hDC, RGB(0, 0, 255));
        TextOut(hDC, io_pos[15].x, io_pos[15].y-35, "DMA Input", 9);
        SelectObject(hDC, hBlackBrush);
        Rectangle(hDC, output_pos[15].x+35, io_pos[15].y-2, output_pos[4].x+41, io_pos[0].y+172);

        SetBkMode(hDC,TRANSPARENT);
		if(precheck)
			TextOut(hDC,output_pos[13].x+70, input_pos[10].y-40,"PostCount",9);
        TextOut(hDC,output_pos[13].x-60, input_pos[10].y,"Samping Rate",12);
        TextOut(hDC,output_pos[13].x+30, input_pos[15].y+20,"KHZ",3);
        TextOut(hDC,output_pos[13].x+70, input_pos[10].y,"Buffer Size",11);
        TextOut(hDC,input_pos[2].x-10, io_pos[15].y+118,"Range: +-5V",11);
        TextOut(hDC,input_pos[15].x, io_pos[15].y-19,"Volt",4);
        TextOut(hDC,input_pos[15].x, io_pos[15].y-5,"5.00",4);
        TextOut(hDC,input_pos[15].x, io_pos[15].y+36,"2.50",4);
        TextOut(hDC,input_pos[15].x, io_pos[15].y+77,"0.00",4);
        TextOut(hDC,input_pos[15].x-3, io_pos[15].y+118,"-2.50",5);
        TextOut(hDC,input_pos[15].x-3, io_pos[15].y+159,"-5.00",5);
        TextOut(hDC,input_pos[10].x+10, io_pos[10].y-19,"Signals",7);
        TextOut(hDC,output_pos[4].x+60, io_pos[0].y-15,"Channel",7);
        EndPaint(hWnd, &ps);
        break;

        // Sample Rate Spin Control
    case WM_VSCROLL:
        switch (LOWORD(wParam)) {
          case SB_LINEUP :
              sample_rate+=5000;
              if (sample_rate > 50000 ) sample_rate=50000;
              break;
          case SB_LINEDOWN:
              sample_rate-=5000;
              if (sample_rate < 5000 ) sample_rate=5000;
              break;
        }
        wsprintf(n,"%d",sample_rate/1000);
        SetWindowText(hEdit,n);
        break;
    case WM_COMMAND:
        switch(LOWORD(wParam)) {
           case IDM_EXIT:
                SendMessage(hWnd, WM_CLOSE, 0, 0L);
                break;
           case IDC_CH:
           case IDC_CH+1:
           case IDC_CH+2:
           case IDC_CH+3:
           case IDC_CH+4:
           case IDC_CH+5:
           case IDC_CH+6:
           case IDC_CH+7:
               if (!bCheck[wParam-IDC_CH]) {
                  SendMessage(GetDlgItem(hWnd,wParam), BM_SETCHECK, 1, 0);
                  SendMessage(GetDlgItem(hWnd,IDC_CH+channel), BM_SETCHECK, 0, 0);
                  bCheck[channel]=FALSE;
               }
               channel=wParam-IDC_CH;
               bCheck[channel]=TRUE;
               break;
           case IDC_SHOW :
                DialogBox(hInst, "DMABox", hWnd, ShowDMA);
                break;
           case IDC_START:
                if (hMem != NULL) {
                   GlobalUnfix(hMem);
                   GlobalUnlock(hMem);
                   GlobalFree(hMem);
                }
                // allocate a memory for DMA
                postCount = GetDlgItemInt(hWnd,IDC_EDIT2,NULL ,FALSE);
                data_size=GetDlgItemInt(hWnd,IDC_EDIT1,NULL ,FALSE);
                if (data_size%512) {
                   wsprintf(s, "Buffer Size should be devided by 512\n", postCount+2);
                   MessageBox(hWnd,s,"Data Size Error", MB_OK);
                   break;
                }
                mem_size=data_size * 2;
                hMem = GlobalAlloc(GMEM_FIXED | GMEM_ZEROINIT,mem_size);

                ai_buf = (U16 *)GlobalLock(hMem);
                if (ai_buf == NULL ) {
                   MessageBox(hWnd,"DMA", "No Memory", MB_OK);
                   SendMessage(hWnd, WM_CLOSE, 0, 0L);
                   break;
                }
                GlobalFix(hMem);
                fstop =0;
                if ((err=AI_9111_Config(card,TRIG_INT_PACER, precheck, postCount))!= NoError) {
                      wsprintf(s, "AI_Config Error = %d\n", err);
                      MessageBox(hWnd, s, "Error", MB_OK);
                      SendMessage(hWnd, WM_CLOSE, 0, 0L);
                      break;
                }
                if ((err=AI_AsyncDblBufferMode (card, 1)) != NoError) {
                      wsprintf(s, "AI_AsyncDblBufferMode Error = %d\n", err);
                      MessageBox(hWnd, s, "Error", MB_OK);
                      SendMessage(hWnd, WM_CLOSE, 0, 0L);
                      break;
                }
				if((err= AI_EventCallBack (card, 1, DBEvent, (U32) AI_DBCallBack)) != NoError) {
                      wsprintf(s, "AI_EventCallBack Error = %d\n", err);
                      MessageBox(hWnd, s, "Error", MB_OK);
                      SendMessage(hWnd, WM_CLOSE, 0, 0L);
                      break;
                }
				if((err= AI_EventCallBack (card, 1, AIEnd, (U32) AI_CallBack)) != NoError) {
                      wsprintf(s, "AI_EventCallBack Error = %d\n", err);
                      MessageBox(hWnd, s, "Error", MB_OK);
                      SendMessage(hWnd, WM_CLOSE, 0, 0L);
                      break;
                }
                if ((err=AI_ContReadChannel(card, channel, AD_B_5_V, ai_buf, data_size, (F64)sample_rate, ASYNCH_OP)) != NoError) {
                      wsprintf(s, "AI_ContReadPort Error = %d\n", err);
                      MessageBox(hWnd, s, "Error", MB_OK);
                      SendMessage(hWnd, WM_CLOSE, 0, 0L);
                      break;
                }
                EnableWindow(hStart, FALSE);
                EnableWindow(hStop, TRUE);
                EnableWindow(hValue, FALSE);
                hMainWnd = hWnd;
                clear_op = FALSE;
                MessageBeep(0);
                break;
            case IDC_STOP:
                clear_op = TRUE;
				AI_AsyncClear(card, &count);
                EnableWindow(hStart, TRUE);
                EnableWindow(hStop, FALSE);
                EnableWindow(hValue, TRUE);
                break;
            default:
                return(DefWindowProc(hWnd, message, wParam, lParam));
        }
        break;
    case WM_DESTROY:
        if (card >= 0) Release_Card(card);
        DeleteObject(hBlackBrush);
        DeleteObject(hRedPen);
        GlobalUnfix(hMem);
        GlobalUnlock(hMem);
        GlobalFree(hMem);
        PostQuitMessage(0);
        break;
    default:
        return(DefWindowProc(hWnd, message, wParam, lParam));
  }
  return(NULL);
}

BOOL  PASCAL ShowDMA(hDlg, message, wParam, lParam)
HWND hDlg;
UINT message;
WPARAM wParam;
LPARAM lParam;
{
    int nTabs[2] = {32, 92};
    int i;
    char cBuf[100];
    char string[10]="      ";
    char data_str[3]="  ";
    I16 *pp;
    switch (message) {
        case WM_INITDIALOG:
            hListBox = CreateWindow("LISTBOX", "Index                   Data (Hex)",
                           WS_CHILD | WS_VISIBLE | LBS_HASSTRINGS | LBS_STANDARD | LBS_USETABSTOPS |WS_CAPTION,
                           50, 40, 240, 180, hDlg, 100, hInst, NULL);
            SendMessage(hListBox, LB_RESETCONTENT, 0, 0L);
            SendMessage(hListBox, LB_SETTABSTOPS, 2, (DWORD)(LPINT) nTabs);
            SetDlgItemText(hDlg, DMA_DESCP, "This ListBox can show at most 4000 data");
            itoa( data_size, string, 10);
            SetDlgItemText(hDlg, DMA_SPACE, string);

            pp = (I16 *)ai_buf;
            if (count > 4000) count = 4000;
            if (!count) count = data_size;
            for(i=0;i<count; i++) {
               wsprintf(cBuf, "%5d\t              %04x", i, pp[i]& 0xffff);
               SendMessage(hListBox, LB_INSERTSTRING, -1, (DWORD)(LPSTR)cBuf);
            }
            ShowWindow(hListBox, SW_SHOW);
            return (TRUE);
        case WM_COMMAND:
            if (LOWORD(wParam) == ID_STOP) {
                DestroyWindow(hListBox);
                EndDialog(hDlg, TRUE);
                return (TRUE);
            }
            break;
    }
    return (FALSE);
}

void AI_DBCallBack()
{
  HDC hDC;
  int t =0;
  U16 adinput;
  U32 i, oldx, oldy, newx, newy, tfer_size;

  hDC = GetDC(hMainWnd);
  tfer_size = data_size/2;  //Every time transfer half size of buffer
  AI_AsyncDblBufferTransfer(card, ai_buf);
  SelectObject(hDC, hBlackBrush);
  SelectObject(hDC, hBlackPen);
  Rectangle(hDC, output_pos[15].x+35, io_pos[15].y-2, output_pos[4].x+41, io_pos[0].y+172);
  SelectObject(hDC, hRedPen);
  for (i=0; i<tfer_size; i++) {
           adinput = ai_buf[i]>>4;
           newy = io_pos[0].y+86-(87*(I16)adinput)/2048;
           newx = i*336/tfer_size+output_pos[15].x+35;
           if (i==0)
              MoveToEx(hDC, newx, newy, NULL);
           else
              MoveToEx(hDC, oldx, oldy, NULL);
           LineTo(hDC, newx, newy);
           oldx = newx;
           oldy = newy;
  }
 ReleaseDC(hMainWnd, hDC);
}

void AI_CallBack()
{
  HDC hDC;
  int t =0;
  U16 adinput;
  U32 i, oldx, oldy, newx, newy, tfer_size;
  char buf[25];

  hDC = GetDC(hMainWnd);
  tfer_size = data_size/2;  //Every time transfer half size of buffer
  EnableWindow(hStart, TRUE);
  EnableWindow(hStop, FALSE);
  EnableWindow(hValue, TRUE);
  if(!clear_op)
	AI_AsyncClear(card, &count);
   AI_AsyncDblBufferTransfer(card, ai_buf);
   SelectObject(hDC, hBlackBrush);
   SelectObject(hDC, hBlackPen);
   Rectangle(hDC, output_pos[15].x+35, io_pos[15].y-2, output_pos[4].x+41, io_pos[0].y+172);
   SelectObject(hDC, hRedPen);
   if (!count) count = tfer_size;
   for (i=0; i<count; i++) {
         adinput = ai_buf[i]>>4;
         newy = io_pos[0].y+86-(87*(I16)adinput)/2048;
         newx = i*336/tfer_size+output_pos[15].x+35;
         if (i==0)
            MoveToEx(hDC, newx, newy, NULL);
         else
            MoveToEx(hDC, oldx, oldy, NULL);
         LineTo(hDC, newx, newy);
         oldx = newx;
         oldy = newy;
   }
 ReleaseDC(hMainWnd, hDC);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久亚洲精华液精华液精华液| 国产99精品国产| 粉嫩av一区二区三区| 欧美视频在线一区二区三区 | 国产一区二区不卡老阿姨| 91国在线观看| 欧美极品aⅴ影院| 六月婷婷色综合| 欧美日韩精品一区二区三区四区 | 成人黄页在线观看| 欧美日韩一区视频| 国产精品日韩成人| 国产真实乱对白精彩久久| 欧美精品在线一区二区三区| 久久久久久久久99精品| 亚洲h动漫在线| 91丨porny丨在线| 中文欧美字幕免费| 国产在线精品免费| 欧美大片顶级少妇| 天天综合色天天综合色h| 91啪亚洲精品| 国产精品色噜噜| 国产高清久久久| 精品国产一区二区三区四区四| 午夜久久久久久久久 | 老司机精品视频导航| 欧美日韩在线播放三区| 亚洲综合男人的天堂| 成人精品免费看| 国产欧美精品一区二区色综合| 国产主播一区二区三区| 色综合色综合色综合色综合色综合 | 中文av一区二区| 国产一区二区三区高清播放| 日韩欧美黄色影院| 免费在线看成人av| 91精品国产高清一区二区三区蜜臀| 亚洲午夜久久久久中文字幕久| 色先锋久久av资源部| 亚洲视频综合在线| av电影天堂一区二区在线观看| 亚洲国产激情av| 成人福利视频网站| 亚洲色图在线播放| 色欧美片视频在线观看| 夜夜嗨av一区二区三区网页| 色先锋资源久久综合| 亚洲一区二区在线免费看| 欧美日韩一区在线| 日本免费在线视频不卡一不卡二| 宅男噜噜噜66一区二区66| 青青草精品视频| 2021国产精品久久精品| 国产高清一区日本| 亚洲天堂av一区| 色久优优欧美色久优优| 午夜精品久久久久久| 日韩免费成人网| 国产美女一区二区| 国产精品久久久久久亚洲毛片| 91在线视频网址| 亚洲高清免费观看| 精品国产制服丝袜高跟| 国产mv日韩mv欧美| 亚洲精品久久久蜜桃| 欧美酷刑日本凌虐凌虐| 激情综合网av| 中文字幕一区二区三区视频| 色八戒一区二区三区| 日韩高清在线观看| 久久久另类综合| 一本大道综合伊人精品热热| 日韩专区一卡二卡| 久久精品免视看| 色播五月激情综合网| 日韩av电影一区| 久久久久久久精| 在线观看精品一区| 极品瑜伽女神91| 亚洲色图视频网站| 国产精品国产三级国产aⅴ入口| 91在线观看美女| 日韩精品色哟哟| 久久精品亚洲精品国产欧美| 日本道免费精品一区二区三区| 五月婷婷久久丁香| 久久久欧美精品sm网站| 日本精品一区二区三区高清| 九九**精品视频免费播放| 国产精品乱码久久久久久| 欧美日韩成人综合天天影院 | 亚洲视频你懂的| 欧美一区二区精美| av中文一区二区三区| 青椒成人免费视频| 综合久久久久综合| 精品国产一区二区三区久久影院 | 国产一区二区伦理| 一二三四区精品视频| 久久新电视剧免费观看| 在线欧美一区二区| 国产91精品在线观看| 日韩福利电影在线| 亚洲欧洲另类国产综合| 日韩精品中文字幕在线不卡尤物 | 国产偷v国产偷v亚洲高清 | 蜜臀av性久久久久蜜臀aⅴ| 中文一区二区完整视频在线观看| 欧美视频一区在线观看| 岛国一区二区三区| 免费观看在线色综合| 一区二区三区在线免费观看| 久久精品夜色噜噜亚洲aⅴ| 精品视频999| 丁香婷婷综合激情五月色| 免费国产亚洲视频| 亚洲国产精品久久久久婷婷884| 日本一区二区三区在线观看| 欧美一区二区精品久久911| 欧洲av在线精品| 成人久久18免费网站麻豆| 久久99精品久久久久久久久久久久 | 欧美人妖巨大在线| 91在线免费视频观看| 国产乱色国产精品免费视频| 日韩av一区二区在线影视| 亚洲女同ⅹxx女同tv| 久久精品一区四区| 日韩欧美电影一区| 91麻豆精品久久久久蜜臀| 欧美午夜电影在线播放| 色综合天天综合网天天看片| 国产福利不卡视频| 国产一区二区伦理| 久久er精品视频| 捆绑调教美女网站视频一区| 亚洲www啪成人一区二区麻豆| 亚洲精品久久7777| 亚洲欧洲韩国日本视频| 国产精品欧美综合在线| 久久久久国产精品麻豆ai换脸| 日韩美一区二区三区| 国产精品伦一区| 国产99久久久国产精品免费看| 日av在线不卡| 日韩影院免费视频| 五月天精品一区二区三区| 一区二区三区四区不卡视频| 亚洲欧美日韩中文播放| 国产精品久久久久精k8 | 日韩欧美激情四射| 91精品国产综合久久香蕉的特点 | 欧美一级午夜免费电影| 欧美日韩中文精品| 欧美亚洲动漫另类| 欧美亚洲动漫制服丝袜| 精品视频在线免费看| 欧美无砖砖区免费| 欧美人成免费网站| 欧美精品v日韩精品v韩国精品v| 欧美人妇做爰xxxⅹ性高电影| 8x8x8国产精品| 日韩欧美激情四射| 久久―日本道色综合久久| 欧美韩国一区二区| 中文字幕一区二区在线观看| 亚洲欧美另类小说| 亚洲午夜久久久| 蜜臀久久久久久久| 久国产精品韩国三级视频| 国产一区91精品张津瑜| 成人综合婷婷国产精品久久| 91丨九色丨黑人外教| 91福利区一区二区三区| 欧美日韩国产高清一区二区 | 石原莉奈在线亚洲二区| 免费观看成人鲁鲁鲁鲁鲁视频| 精品一区二区久久久| 国产一区91精品张津瑜| 成人午夜精品在线| 色播五月激情综合网| 56国语精品自产拍在线观看| 日韩视频免费观看高清完整版在线观看 | 国内一区二区在线| 成人网男人的天堂| 欧美午夜精品免费| 精品国免费一区二区三区| 中文字幕精品三区| 亚洲精品国产高清久久伦理二区| 午夜视频一区二区| 国产一区二区0| 色94色欧美sute亚洲线路一ni| 777亚洲妇女| 2020日本不卡一区二区视频| 亚洲人成在线播放网站岛国| 日韩av不卡在线观看| 成人精品在线视频观看| 欧美日韩一区二区三区在线看| 欧美精品一区二区久久婷婷|