C51學習之刪除為呼叫的函式 破解MDK 2K 限制
最近閒來無聊,研究起了C51。
51 嘛!! 第一步就是安裝MDK 。第一次安裝之後,破解也提示成功了,2K 以上的程式碼也可以編譯了,只是有點小缺陷,每次模擬的時候,總會提示
看著這個,雖然不爽,但是既然不影響應用,也就懶得管它了,就這樣放下了。
可是呢,今天實在是受不了了。
由於最新程式寫的有點多,封裝了好多方法,結果不經hex 變得超大,而且每次報一大堆的警告,看著真煩,就像把那些沒有用到的函式,全部從hex裡面都刪掉。
刪除為呼叫函式的方法
1.選中指定的 勾
2.加入 REMOVEUNUSED
然後在全編譯的時候就出問題了
總是編譯不成功,並且提示 “RESTRICTED VERSION WITH 0800H BYTE CODE SIZE LIMIT; USED: 161CH BYTE (276%) *”
這下真的是受不了了
然後就發現,keil 現在是越來越賊了,為了防破解,也是費勁了心思
我們只需要更改產品型別就好,選擇 Prof.Developers kit/ 這個 再重新注意一次。
結果 Everything is OK!
相關推薦
C51學習之刪除為呼叫的函式 破解MDK 2K 限制
最近閒來無聊,研究起了C51。 51 嘛!! 第一步就是安裝MDK 。第一次安裝之後,破解也提示成功了,2K 以上的程式碼也可以編譯了,只是有點小缺陷,每次模擬的時候,總會提示 看著這個,雖然不爽,但
【轉】Golang學習之同一個package中函式互相呼叫的問題
問題程式碼如下 a.go: package main func main(){ Test() } b.go: package main import "fmt" func Test(){ fmt.Println("Hello World!") } 這
大資料學習之路105-視窗函式及foreachRDD,foreachPartition,foreach對比
sparkstreaming的視窗函式: 視窗函式的作用主要是計算一段時間之內的資料的變化,那麼就會有人產生疑問,為什麼視窗與視窗之間需要重疊呢? 其實不重疊也是可以的,但是如果不重疊的話,將來做出來的報表一個時間段與另一個時間段的資料就會產生劇烈的變化。 視窗函式可以讓我們一下子操
python學習之六(內建函式的使用)
# 斷是否全部為真,布林運算 print(all([1,2,'1'])) # 有一個為真返回真 print(any([0,1])) # 把十進位制轉換為二進位制 print(bin(3)) # 判斷布林值0,None的布林值為false,其他都是true print(bool(None)) # 把字
python學習之旅2(函式進階)
目錄 楔子 名稱空間和作用域 函式巢狀及作用域鏈 函式名的本質 閉包 本章小結 楔子 假如有一個函式,實現返回兩個數中的較大值: def my_max(x,y): m = x if x>y else y return mbigger
React學習之旅----生命週期函式
app.js import React, { Component } from 'react'; // import logo from './assets/images/logo.svg'; // import './assets/css/App.css'; // 引入
Linux----網路程式設計(IO複用之epoll系統呼叫函式)
伺服器端epoll.c #include <stdio.h> #include <string.h> #include <stdlib.h> #include <assert.h> #include <unistd.h&
大資料學習之Scala中main函式的分析以及基本規則(2)
一、main函式的分析 首先來看我們在上一節最後看到的這個程式,我們先來簡單的分析一下,有助於後面的學習 object HelloScala { def main(args: Array[String]): Unit = { printl
Vuejs2.0學習之二(Render函式,createElement,vm.$slots,函式化元件,模板編譯,JSX)
vue中的render函式,我在網上找了很多,下面這一篇文章最詳細 { // 和`v-bind:class`一樣的 API 'class': { foo: true, bar: false }, // 和`v-bind:style`一
支援向量機學習之2:核函式
maxW(α)=∑i=1nαi−12∑i,j=1nyiyjαiαj<xi,xj> s.t.⎧⎩⎨⎪⎪⎪⎪∑i=1nαiyi=0αi≥0i=1...n 的求解需要計算<xi,xj>這個內積,而如果輸入樣本線性不可分的話,我們採取
C++學習之深入理解虛擬函式--虛擬函式表解析
前言 C++中的虛擬函式的作用主要是實現了多型的機制。關於多型,簡而言之就是用父類型別的指標指向其子類的例項,然後通過父類的指標呼叫實際子類的成員函式。這種技術可以讓父類的指標有“多種形態”,這是一種泛型技術。所謂泛型技術,說白了就是試圖使用不變的程式碼來實現可變的演算
第十五週實驗報告一(實現氣泡排序演算法,並將之定義為一個函式)
第15週報告1: 實驗目的:學會氣泡排序演算法 實驗內容:實現氣泡排序演算法,並將之定義為一個函式 * 程式頭部註釋開始 * 程式的版權和版本宣告部分 * Copyright (c) 2011, 煙臺大學計算機學院學生 * All rights reserved. *
資料庫學習之儲存過程及函式。
一、變數 1、定義: DECLARE var_name type[DEFAULT value] 例如,定義一個DATE型別的變數last_month_start: DECLARE last_month_start DATE 2、變數的賦值:
ROS學習之 cpp回撥函式和輪轉(spin)
wiki連結: http://wiki.ros.org/roscpp/Overview/Callbacks%20and%20Spinning 資料(雲飛機器人實驗室的一篇小文): http://www.yfworld.com/?p=2318 這篇文章會幫助理解ros::s
Java學習之通過JNI呼叫C/C++編寫的dll連結庫(圖文教程)
看了網上幾個主要的教程,都會導致出現各種錯誤,對於初學者來說會造成一些困擾。在這裡詳細記錄一下JNI呼叫過程。本案例的基本配置:Eclipse+VS2015,Win10 64位 (1)編寫J
STL學習之十二:函式物件和謂詞
本文主要介紹函式物件和謂詞的示例程式碼。函式物件是屬於類物件,能突破函式的概念 ,用以保持條用狀態資訊。具體的使用資訊科參見程式碼中的註釋部分。 示例程式碼主要包含: 1 .函式物件的定義 函式物件和普通函式的區別; 2. 分清楚STL演算法返回的值時迭代器 還是 謂
Tensorflow深度學習之五:啟用函式
啟用函式的作用 在神經網路中,啟用函式的作用是能夠給神經網路加入一些非線性因素,使得神經網路可以更好地解決較為複雜的問題。 我們嘗試引入非線性的因素,對樣本進行分類。 在神經網路中也類似,我們需要引入一些非線性的因素,來更好地解決複雜的問題。而啟用函式恰好
Qt 學習之路 2(19):事件的接受與忽略(當重寫事件回撥函式時,時刻注意是否需要通過呼叫父類的同名函式來確保原有實現仍能進行!有好幾個例子。為什麼要這麼做?而不是自己去手動呼叫這兩個函式呢?因為我們無法確認父類中的這個處理函式有沒有額外的操作)
版本: 2012-09-29 2013-04-23 更新有關accept()和ignore()函式的相關內容。 2013-12-02 增加有關accept()和ignore()函式的示例。 上一章我們介紹了有關事件的相關內容。我們曾經提到,事件可以依情況接受和忽略。現在,我們就
Linux學習1之shell中將指令碼檔案呼叫函式的輸出值輸出到檔案
一般a.sh等指令碼檔案可以很容易的將a.sh的echo等資料輸出到文字檔案,如: ./a.sh >1.txt 但是無法將指令碼檔案呼叫函式的輸出值輸出到檔案 可以使用%>: [email
[JSP][JSTL]頁面中呼叫函式--之${fn:}內建函式、判斷字串是否為空、替換回車符
fn:contains(string, substring) 如果引數string中包含引數substring,返回truefn:containsIgnoreCase(string, substring) 如果引數string中包含引數substring(忽略大小寫),返回truefn:endsWith(st